Witam ma problem ze skryptem w batchu , mianowicie nie chce utworzyć folderów z pierwszymi literami nazw plików. Proszę o pomoc w dokończeniu zadania.
@echo off
setlocal EnableDelayedExpansion
set /p sciezka=Podaj sciezke do przeszukania
if not exist “%sciezka%\backup” (mkdir %sciezka%\backup
)
echo %sciezka%
set name=%date%
if not exist “%sciezka%\backup%name%” (mkdir %sciezka%\backup%name%
)
set /p rozszerzenie= Podaj rozszerzenie do poszukiwania
for /r %sciezka% %%g IN (*."%rozszerzenie%") do (
echo %%g
for %%c IN ("%%g") do (
set word=%%~nc
set firstleter=%word:~0,1%
set lit=%firstleter%
echo %lit%
if not exist “%sciezka%\backup%name%%firstleter%” (mkdir %sciezka%\backup%name%%firstleter%
)
)
)
pause
endlocal
Poniżej dołączam jak powinien działać program ora materiały do zadań w załączniku.DaneDoZadan.zip (47,1 KB)
PRZYKŁAD
Jeżeli system wyszukał dwa pliki o rozszerzeniu jpg o nazwach:
brytyjski.jpg
dachowiec.jpg
To skrypt ma stworzyć strukturę katalogów :
.\BACKUP
└───18.03.2020
├───b
│
│
├───d
│
Następnie skrypt skopiuje odnalezione pliki dopasowując je do katalogów utworzonych w podkatalogu backup[bieżąca_data] - dopasowanie po pierwszej literze nazwy:
PRZYKŁAD
Jeżeli system wyszukał dwa pliki o rozszerzeniu jpg o nazwach:
)
)
brytyjski.jpg
dachowiec.jpg
to drzewko powinno wyglądać jak poniżej
.\BACKUP
└───18.03.2020
├───b
│ brytyjski.jpg
│
├───d
│ dachowiec.jpg
│
Skrypt ma wyświetlać informacje:
a) prośbę o podanie ścieżki przeszukiwania
b) prośbę o podanie rozszerzenia - w postaci bez wzorca, np. jpg a nie *.jpg
Skrypt ma być BEZPIECZNY:
a) jeśli użytkownik poda ścieżkę, która nie istnieje - system ma poinformować go o błędzie i przerwać działanie.
b) jeśli użytkownik nie rozszerzenia - również skrypt powinien poinformować o błędzie i przerwać działanie