|
发表于 2011-1-7 12:31:00
|
显示全部楼层
Post by Parmenides;2124984
#!/bin/bash
file_type[0]=".*.\.c"
file_type[1]=".*.\.sh"
s=""
for x in ${file_type}; do
s="$s -e /$x/p"
done
运行的结果是:
/.*.\.c/p -e /.*.\.sh/p
我想得到的结果是:
-e /.*.\.c/p -e /.*.\.sh/p
前面少了一个-e,不知道是什么原因。 你可能是最后
而不是
第一种情况,$s扩展后,前面的第一个 -e 被echo当作自己的选项,所以输出中你就看不到第一个-e了。 |
|