在这样的 for 循环中,
for i in `cat *.input`; do
echo "$i"
done
如果其中一个输入文件包含类似的条目*a
,它将给出以“a”结尾的文件名。
有没有一种简单的方法可以防止这种文件名扩展?
由于使用多个文件,通配符 ( set -o noglob
) 不是一个好的选择。我也应该能够过滤输出cat
以转义特殊字符,但是
for i in `cat *.input | sed 's/*/\\*'`
...
仍然导致*a
扩大,而
for i in `cat *.input | sed 's/*/\\\\*'`
...
给我\*a
(包括反斜杠)。[我想这是一个不同的问题]