我有这个命令,如果直接在终端上运行,它可以正确执行。
awk '/word/ {print NR}' file.txt | head -n 1
目的是找到单词所在行的行号'word'
首先出现在file.txt
.
但是当我把它放在脚本文件中时,它似乎不起作用。
#! /bin/sh
if [ $# -ne 2 ]
then
echo "Usage: $0 <word> <filename>"
exit 1
fi
awk '/$1/ {print NR}' $2 | head -n 1
那么我做错了什么?
Thanks,
将单引号替换为双引号,以便$1
由 shell 评估:
awk "/$1/ {print NR}" $2 | head -n 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)