5

端末で直接実行すると正しく実行されるこのコマンドがあります。

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

それで、私は何を間違えましたか?

ありがとう、

4

4 に答える 4