Существуют разные реализации и версии mv
. Вы можете проверить допустимый синтаксис вашей версии, используя man mv
.
mv
, вы можете использовать mv -t target/dir *.mp3
. mv *.mp3 target/dir
. mv
поддерживает только абсолютный минимум mv source target
только с одним источником и одним целевым файлом, вы можете использовать следующую команду, которая всегда должна работать, если существует target/dir/
.
for i in *.mp3; do mv "$i" "target/dir/$i"; done
из командной строки
for /f "tokens=3" %f in ('find /c /i "Transfer Complete" "C:\ftp.LOG"') do set isComplete=%f
из пакетного сценария
for /f "tokens=3" %%f in ('find /c /i "Transfer Complete" "C:\ftp.LOG"') do set isComplete=%%f
Вам не нужно использовать команду для
; find
установит ERRORLEVEL
на одно из этих значений в зависимости от результата:
Поскольку похоже, что вы просто хотите узнать, завершена ли передача, а не общее количество появлений строки, вы можете сделать что-то вроде этого:
@echo OFF
@find /c /i "Transfer Complete" "C:\test path\ftp.LOG" > NUL
if %ERRORLEVEL% EQU 0 (
@echo Success
) else (
@echo Failure
)