各位前輩好 小弟撰寫以下程式遇到一些問題
這script是想要將 /home目錄下的特定使用者加入陣列
之後用迴圈跑if條件 想在一個if裡面刪除特定多個附檔名(txt,xls等)
小弟的問題在於 怎麼把多個萬用字元副檔名連接 *.txt *.xls
或者各位大大有其它更好的想法建議
謝謝
!/bin/sh
Date=$(date +"%Y-%m-%d-%H:%M")
###Users
NAME[0]="james"
NAME[1]="amy"
NAME[2]="Mahnaz"
NAME[3]="Ayan"
NAME[4]="kevin"
##################
for ((i=0;i<5 ;i++))
do
############刪除txt跟xls
if [ -f /home/${NAME[$i]}/*.txt *.xls]; then #### 連結多個附檔名問題
find /home/${NAME[$i]} -mtime -1 -name *.txt *.xls -exec rm -f {} ; # 連結多個附檔名問題
echo $Date--${NAME[$i]} "*.txt *.xls 檔案已刪除"
#############找不到檔案刪除
else
echo $Date--${NAME[$i]} "無刪除檔案"
fi
done
[ 與 find 正好都可以用 -o
代表 or 來使用,也就是兩個條件只要滿足其中一個就行,你可以試試
if [ -f /home/${NAME[$i]}/*.txt -o -f /home/${NAME[$i]}/*.xls]; then
find /home/${NAME[$i]} -mtime -1 -name *.txt -o -name *.xls -exec rm -f \{\} \;