【发布时间】:2012-02-08 08:30:23
【问题描述】:
我在 bash 脚本中有一个微不足道的 for 循环,它不起作用,我看不出有什么问题。
#!/bin/bash
function deleteOut {
for index in {0..$1}
do
echo "/bin/rm -rf ./OUT/Message_${index}.log"
/bin/rm -rf ./OUT/Message_${index}.log
done
}
并使用
调用它deleteOut 5
我期待像这样的循环
/bin/rm -rf ./OUT/Message_0.log
/bin/rm -rf ./OUT/Message_1.log
/bin/rm -rf ./OUT/Message_2.log
/bin/rm -rf ./OUT/Message_3.log
/bin/rm -rf ./OUT/Message_4.log
/bin/rm -rf ./OUT/Message_5.log
相反,我得到了
/bin/rm -rf ./OUT/Message_{0..5}.log
我已经解决了这样的问题
find ./OUT -name "Message_*.log" | xargs /bin/rm
但这不是重点。为什么我的第一种方法不起作用?
【问题讨论】: