处理多个文件时出错

rep*_*ter 2 awk

我正在尝试awk在我的脚本中处理10个文件,并且我收到以下错误.

$ sh skipper.sh file1 filea fileb filec filec fileb filea fileb filec fileb awk: cmd. line:2: (FILENAME=filec FNR=7) fatal: cannot open file `file10' for reading (No such file or directory)
Run Code Online (Sandbox Code Playgroud)

有谁知道如何修理它?它与<10个文件正常工作,但我需要使用10或50个文件.

这是我的代码

awk -v nfiles="10" 'NR==FNR{a[$0]++;next}
$0 in a {a[$0]++; next}
{b[$0]++}
END{
  for(i in a){
    if(a[i]==nfiles) {
      print i > "output1"
    }
    else if(a[i]==1) {
        print i > "output3"
    }
  }
  for(i in b){
    if(b[i]==nfiles-1) {
        print i > "output2"
    }
  }
}' $1 $2 $3 $4 $5 $6 $7 $8 $9 $10
Run Code Online (Sandbox Code Playgroud)

gho*_*g74 5

当您点击参数10及以上时,您应该使用大括号,例如

${10}
Run Code Online (Sandbox Code Playgroud)