bash脚本命令执行了两次

时间:2014-03-12 13:24:06

标签: bash awk

我正在尝试运行一个简单的bash脚本,该脚本运行名为subj1subj2等文件夹,并在每个文件夹中执行awk脚本。问题是awk命令执行两次,即使它只在脚本中列出一次。我刚开始使用bash,我不确定我是否理解这里发生了什么。任何帮助表示赞赏。

for i in `seq 1 10`;
do
  cd subj$i
  awk -f ../melt.awk subj$i_*.txt
  cd ..
done

1 个答案:

答案 0 :(得分:3)

Underscore是一个有效的标识符字符,因此

subj$i_*.txt

在bash中被解释为

subj${i_}*.txt

这不是你想要的。将i与下划线分开:

subj${i}_*.txt

subj$i\_*.txt
顺便说一句,你可以打电话给

awk -f met.awk subj{1..10}_*.txt