2

文字列のn行目を選択するシェルコマンドはありますか?

例:

line1
line2
line3

ライン 2 を選択します。

更新:これまでありがとう。あなたの助けを借りて、私は文字列のためのこの解決策を思い付きました:

2 行目を選択します。

echo -e "1\n2\n3" | head -2 | tail -1
4

3 に答える 3

4
$ 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
于 2012-08-09T11:44:07.707 に答える
1

使用gawk

gawk -v n=3 'n==NR { print; exit }' a.txt
于 2012-08-09T11:50:13.807 に答える
1
head -4 a.txt | tail -1

a. の 4 行目を印刷します。TXT。

于 2012-08-09T11:45:08.347 に答える