ファイルから行を印刷する次の方法が見つかりました。
この例では、ホストファイルの最初の行を印刷しようとしています。
sed -n '1,1p' /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
しかし、sedコマンドのパラメータを使用して同じ操作を実行する方法
例えば
Line_number=1
sed -n ' $Line_number,$Line_numberp' /etc/hosts
sed: -e expression #1, char 4: extra characters after command
私のsed構文にはどんな問題がありますか?
ベストアンサー1
変数を拡張するには、シェルの「代わりに」を使用します。
例:
victor@pyfg:~$ line_number=2
victor@pyfg:~$ sed -n "${line_number},${line_number}p" /etc/hosts
1.2.3.4 row-2
1行だけ印刷するので、次のように印刷することもできます。
victor@pyfg:~$ sed -n "${line_number}p" /etc/hosts
1.2.3.4 row-2