要显示 UNIX 脚本中文件中的记录总数减一,请作为参数传递

要显示 UNIX 脚本中文件中的记录总数减一,请作为参数传递

输入按以下格式提供:

ksh -x count.sh filename `cat filepath/filename | wc -l

这里的问题是我需要将第二个参数 cat 传递给另一个变量并执行expr -1.

我的要求是我需要计算命令本身的计数,并将其传递给脚本。

实际计数的记录总数应小于 1。我还需要删除标头记录。

答案1

文件中的记录总数减一最简单的方法是awk

awk 'END { print NR - 1 }' filename

NR这会打印负一的值,其中NR是保存到目前为止读取的记录数的内部变量。这是在输入结束时完成的,给出文件中的记录总数减一。

然后你的命令可能会写成

ksh -x count.sh filename "$( awk 'END { print NR - 1 }' filename )"

相关内容