我在 Ubuntu 机器上运行的 bash 脚本中有以下语句:
for l in foo_????
do
# do something with $l
done
如果没有与模式匹配的文件,这将无法正常工作。
我在 for 循环前面加上:
if [ -f foo_??? ]
then
for l in foo_???
如果有 0 或 1 个文件与该模式匹配,它会工作,但当消息有更多文件时会失败line 4: [: foo_123: binary operator expected
如果有> = 1个文件与模式匹配,我如何需要修改此块以仅循环?