我正在尝试编写一个bash脚本,它将可变数量的文件名作为参数。 该脚本正在处理这些文件并为每个文件创建一个临时文件。
要在循环中访问参数,我正在使用
for filename in $*
do
...
generate t_$(filename)
done
循环完成后,我想做cat t_$*
之类的事情。
但它不起作用。因此,如果参数为a b c
,那么就会抓住t_a, b and c
。
我想抓住文件t_a, t_b and t_c
。
无论如何都要这样做而不必将名字列表保存在另一个变量中吗?
答案 0 :(得分:8)
您可以使用参数扩展:
cat "${@/#/t_}"
/
表示替换,#
表示开头。