是否有shell命令来选择字符串的第n行?
示例:
line1
line2
line3
选择第2行。
更新:到目前为止,谢谢。在你的帮助下,我想出了一个字符串的解决方案:
选择第二行:
echo -e "1\n2\n3" | head -2 | tail -1
答案 0 :(得分:4)
$ head -n filename | tail -1
其中'n'是您的行号。但是效率有点低,启动了两个流程。
或者sed
可以做到这一点。打印第4行:
$ sed -n 4p filename
This forum answer详细介绍了sed
# print line number 52
sed -n '52p' # method 1
sed '52!d' # method 2
sed '52q;d' # method 3, efficient on large files
答案 1 :(得分:1)
head -4 a.txt | tail -1
打印第4行。文本。
答案 2 :(得分:1)
使用gawk
:
gawk -v n=3 'n==NR { print; exit }' a.txt