Bash скрипт для перемещения файлов
Я новичок и мне нужна помощь.
Я пытаюсь сделать скрипт для перемещения некоторых файлов из одного каталога в другой каталог. Прежде чем создать скрипт, я протестировал команду и она работала:
mv /path/to/source /path/to/destination
После того, как я сделал сценарий с nano
:
#!bin/bash/
echo "mv /path/to/source /path/to/destination"
Я сделал скрипт исполняемым с помощью: chmod +x file
а затем выполняется как ./file
но появляется следующая ошибка:
bash: ./move.sh: /bin/bash/: bad interpreter: Not a directory
Я пробовал и с sudo ./file
и bash файл, но он не работает.
Я использую Ubuntu, установленную вместе с VirtualBox.
1 ответ
Это потому что ты использовал #!bin/bash/
и это неправильно. Правильный путь:
#!/bin/bash
Это называется шебанг и говорит оболочке, с какой программой интерпретировать скрипт, когда выполняется.
Другое дело: абсолютный путь для интерпретатора bash в Ubuntu /bin/bash
не bin/bash/
или что-то другое. Вы можете проверить это используя which bash
команда.
И еще одна вещь, но, вероятно, вы знаете это: следующая строка:
echo "mv /path/to/source /path/to/destination"
будет отображать только текстовое сообщение с mv /path/to/source /path/to/destination
, Для реального перемещения файлов используйте следующий скрипт:
#!/bin/bash
mv /path/to/source /path/to/destination
Вот так должен выглядеть ваш скрипт.