我有幾個shell命令從給定的目錄中刪除所有的CSV。但是,當我嘗試將這些函數放入函數中時,它們似乎並不奏效,但我無法弄清楚原因。殼牌功能刪除CSV的不工作?
#works
p=/path/*
for f in $p
do
if [ "${f: -3}" == 'csv' ]
then
rm $f
fi
done
#Doesn't work
csv(){
t=$1
for f in $t
do
if [ "{f: -3}" == 'csv' ]; then
rm $f
fi
done
}
x=/path/*
#doesn't work
csv $x
'$ 1'只會包含第一個文件名。試試't = $ @'。爲了這個工作,你的文件名不能有空格。最好是編寫你的循環,比如'for f;做......這將循環每個輸入。 – ooga 2014-10-29 18:40:28
爲什麼不使用'find'命令? 'find/path/-maxdepth 1 -type f -name'* .csv'-delete'(或者沒有'-maxdepth 1' * by * recursive *) – 2014-10-29 18:44:33