1
我的shell腳本:修改shell腳本,刪除文件夾以及文件
#!/bin/bash
if [ $# -lt 2 ]
then
echo "$0 : Not enough argument supplied. 2 Arguments needed."
echo "Argument 1: -d for debug (lists files it will remove) or -e for execution."
echo "Followed by some path to remove files from. (path of where to look) "
exit 1
fi
if test $1 == '-d'
then
find $2 -mmin +60 -type f -exec ls -l {} \;
elif test $1 == '-e'
then
find $2 -mmin +60 -type f -exec rm -rf {} \;
fi
這基本上會發現,在作爲第二個參數,要麼列表(-d的參數1)所提供的指定目錄下文件或刪除( -e參數1)文件修改> 60分鐘前。
我該如何重做這個也刪除文件夾?
哎呀,哇,對不起,浪費你的時間。謝謝。 – Chris 2010-09-01 13:13:16
您可以結合'-types':'find $ 2 -mmin +60 \(-type f -o -type d \)-exec ls -ld {}; – 2010-09-01 15:59:34
警告:這可能不會做你想做的事:如果目錄本身在最近一小時內未被修改,則目錄(包括$ 2本身)將被刪除,即使它們中有活動的文件/子目錄。避免這個問題更加複雜,特別是在空運行模式下。 – 2010-09-02 06:44:36