如何更改以下示例,以便在循环变量替换后进行全局扩展?
for i in a b c
do echo $i/*.txt
done
更新:这通常确实有效,但是set -f
在我正在查看的脚本中已经完成了。
答案1
如果您正在编写bash
代码,明智地使用“set -f”来关闭通配符,并使用“set +f”来打开通配符可能会达到您想要的效果:
#!/bin/bash
for i in a b c
do
set -f
Z=$i/*.txt
echo $Z
set +f
echo
echo "Does it expand?"
echo $Z
done