Я написал сценарий оболочки (называемый Trash.sh), который при запуске отобразит все файлы в моем каталоге «dustbin» и спросит пользователя, хотят ли они удалять каждый файл по одному. Сценарий выглядит следующим образом:Сценарий удаления Linux Linux
#if directory is empty, display message
if test ! -f ~/dustbin/*
then
echo "Directory is empty"
#if directory is not empty, then display each item and ask to delete
else
for resfile in ~/dustbin/* #for each file in directory, store it in resfile variable
do
if test -f $resfile ; then #if a file exists
echo "Do you want to delete $resfile?"
echo "Enter y or n"
read ans #store user input in ans variable
if test $ans = y ; then
rm $resfile
echo "File $resfile was deleted"
fi
fi
done
fi
Это прекрасно работает для меня. Когда пользователь набирает sh Trash.sh
, сценарий будет работать нормально, каждый файл будет отображаться, и пользователю будет предложено его удалить или нет. Однако то, что я хотел бы добавить, - это вариант, когда пользователь может ввести sh Trash.sh -a
и для всех файлов в каталоге, которые будут автоматически удалены без подтверждения.
Я немного застрял в том, как этого добиться. Есть идеи?
п.с. - Я использую Mac OS X 10.6.4 и делать все через Терминал
Пожалуйста, не заменяйте оригинал w с новой версией, основанной на ответе. Это не дает никаких ответов. Предпочтительно, если это вообще необходимо, добавить исправленную версию, четко обозначенную ниже оригинала. –
@Dennis - Мои извинения – 2010-11-11 16:43:36