我有几个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