Gablik
29-09-2011, 22:07
@echo off
setlocal ENABLEDELAYEDEXPANSION
if '%1'=='' (
echo No directory.
goto :end
) else (
pushd %1
)
echo Move files from %1
echo Move file to %2
echo -------------------------------------------
set /a count2=0
for %%i in (*) do (
set name=%%i
set /a count=0
for /l %%j in (0,1,255) do (
set "lit=!name:~%%j,1!"
if "!lit!"=="." set /a count=count+1
if "!lit!"=="," set /a count=count+1
if "!lit!"==":" set /a count=count+1
if "!lit!"==";" set /a count=count+1
if "!lit!"=="'" set /a count=count+1
if "!lit!"=="-" set /a count=count+1
)
if !count! GTR 3 (
echo %%i
move "%%i" %2
set /a count2=count2+1
)
)
if '!count2!'=='0' (
echo No files
echo -------------------------------------------
) else (
echo ---------------------------------
echo Moved file !count2!
echo ---------------------------------
)
:end
popd
@echo finished
вот что я написал.
но при запуске выдает она выводит имена файлов правильно но не перемещает их а пишет
"системе не удается найти заданный путь"
setlocal ENABLEDELAYEDEXPANSION
if '%1'=='' (
echo No directory.
goto :end
) else (
pushd %1
)
echo Move files from %1
echo Move file to %2
echo -------------------------------------------
set /a count2=0
for %%i in (*) do (
set name=%%i
set /a count=0
for /l %%j in (0,1,255) do (
set "lit=!name:~%%j,1!"
if "!lit!"=="." set /a count=count+1
if "!lit!"=="," set /a count=count+1
if "!lit!"==":" set /a count=count+1
if "!lit!"==";" set /a count=count+1
if "!lit!"=="'" set /a count=count+1
if "!lit!"=="-" set /a count=count+1
)
if !count! GTR 3 (
echo %%i
move "%%i" %2
set /a count2=count2+1
)
)
if '!count2!'=='0' (
echo No files
echo -------------------------------------------
) else (
echo ---------------------------------
echo Moved file !count2!
echo ---------------------------------
)
:end
popd
@echo finished
вот что я написал.
но при запуске выдает она выводит имена файлов правильно но не перемещает их а пишет
"системе не удается найти заданный путь"