文字列のn行目を選択するシェルコマンドはありますか?
例:
line1
line2
line3
ライン 2 を選択します。
更新:これまでありがとう。あなたの助けを借りて、私は文字列のためのこの解決策を思い付きました:
2 行目を選択します。
echo -e "1\n2\n3" | head -2 | tail -1
文字列のn行目を選択するシェルコマンドはありますか?
例:
line1
line2
line3
ライン 2 を選択します。
更新:これまでありがとう。あなたの助けを借りて、私は文字列のためのこの解決策を思い付きました:
2 行目を選択します。
echo -e "1\n2\n3" | head -2 | tail -1
$ head -n filename | tail -1
ここで、「n」は行番号です。しかし、それは少し非効率的で、2 つのプロセスを起動します。
あるいは、これsed
を行うことができます。4 行目を印刷するには:
$ sed -n 4p filename
このフォーラムの回答では、3つの異なる方法について詳しく説明していますsed
# print line number 52
sed -n '52p' # method 1
sed '52!d' # method 2
sed '52q;d' # method 3, efficient on large files
使用gawk
:
gawk -v n=3 'n==NR { print; exit }' a.txt
head -4 a.txt | tail -1
a. の 4 行目を印刷します。TXT。