Я написал небольшой скрипт оболочки на основе примера, который нашел здесь: https://bbs.archlinux.org/viewtopic.php?id=36305
, он принимает это:
bash-3.2$ ls
test 001 test 002 test 003 test 004
и превращает его в:
bash-3.2$ ls
001 002 003 004 rename.sh
Однако это дает мне эту ошибку (даже при том, что это работает):
bash-3.2$ ./rename.sh
mv: missing destination file operand after `rename.sh'
Try `mv --help' for more information.
`test 001' -> `001'
`test 002' -> `002'
`test 003' -> `003'
`test 004' -> `004'
Хотя это работает правильно, было бы хорошо видеть, где я напутал, я предполагал, что по умолчанию это поместит файлыв том же каталоге (это желаемый результат).
#!/bin/bash
ls | while read -r FILE
do
mv -v "$FILE" `echo $FILE | awk -F ' ' '{print $2}'`
done
Заранее благодарим за помощь в исправлении моего неверного кода.