Вот задача.
Напишите скрипт, который запускается с двумя аргументами:
- первый аргумент задает имя каталога
- второй аргумент задает имя каталога
и который выполняет следующие действия:
-просматривает текущий каталог
-если в текущем каталога найдены оба каталога, все файлы из первого каталога перемещаются во второй, а из второго - в первый
-если хотя бы один из указанных каталогов не найден, выводится сообщение Directory is not found.
Вот мой вариант (сразу простите за ошибки в синтаксисе, которые могут быть, так как не успел еще linux на виртуалку поставить).
Перед скриптом я создал пустой каталог с именем katalog_tmp
!#/bin/bash
PER=2
if [ $# -ne $PER ]
then
echo "Запустите скрипт заново и наберите с клавиатуры 2 аргумента"
exit
fi
if [ -e $1]
then
if [ -e $2]
then
mv $1 katalog_tmp; mv $1 $2; mv $2 katalog_tmp;
else echo "Directory is not found"
fi
else echo "Directory is not found"
fi
То есть по сути мой скрипт
1) Переименовывает папки местами, а не перемещает файлы из одной папки в другую.
2) Скрипт проверяет существование каталогов вообще, а не в текущем каталоге.
Как записать скрипт, что он выполнял СТРОГО поставленные задачи ? Напишите, пожалуйста, как можно проще. Только начали изучать bash. Мало всего знаем пока что.
Пользуйтесь тегами BBCode