Я пытаюсь создать скрипт, который принимает два аргумента, исходную папку и целевую папку. Я пытаюсь показать сообщение об ошибке, если исходный каталог не найден и не выйдет из программы. Если целевой каталог не найден, я бы хотел, чтобы он создал этот каталог. Затем я хотел бы скопировать все содержимое из исходного каталога в целевой каталог.борется со сценарием оболочки в linux
Когда я запускаю программу с двумя переданными аргументами, например./Мнт/sdb1 и -root/мои-документы/photoarch, я получаю ошибку:
ф: не может стат «/ шоссе/adb1 /»: Нет такого файла или каталога
Я хотел бы, чтобы показать мою ошибку, которую я закодировал, и создать папку, если она еще не создана, но она не делает этого.
Благодаря
#!/bin/sh
clear
#checking that arguments exist
if [ $# -eq 0 ]; then
echo "Usage: phar image_path archive_path"
elif [ -d $1 ]; then
echo "Source directory not found"
exit
elif [ -d $2 ]; then
mkdir ~root/my-documents/$2
else
cp -r $1 $2
fi