如何获得仅SED的第二行

nev*_*int 30 unix linux sed

如何使用SED获取文件中的第二行

@SRR005108.1 :3:1:643:216
GATTTCTGGCCCGCCGCTCGATAATACAGTAATTCC
+
IIIIII/III*IIIIIIIIII+IIIII;IIAIII%>
Run Code Online (Sandbox Code Playgroud)

使用上面看起来像我想要的数据

 GATTTCTGGCCCGCCGCTCGATAATACAGTAATTCC
Run Code Online (Sandbox Code Playgroud)

Jon*_*han 40

你真的不需要Sed,但如果要学习...你可以使用-n

n读取下一个输入行并使用命令而不是第一个命令开始处理换行符

sed -n 2p somefile.txt
Run Code Online (Sandbox Code Playgroud)

编辑:您还可以使用manatwork在评论中提到的提示来提高性能:

sed -n '2{p;q}' somefile.txt
Run Code Online (Sandbox Code Playgroud)

  • 如果你确定在第2行之后将不再有第2行,你可以在`p`rinting之后通过`q`uiting进行一些无意义的处理:`sed -n'2 {p; q}'somefile.txt`. (4认同)
  • 不适用于 OS X。`{p;q}` 是 GNU 扩展吗?IMO 正确答案应该是`sed '2q;d'`。 (2认同)

Jac*_*cob 16

你总是想要一个文件的第二行?不需要SED:

head -2 file | tail -1
Run Code Online (Sandbox Code Playgroud)

  • 这需要 2 个进程,而不是 sed 的一个进程。所以从性能角度来看,sed 更好。 (3认同)

Kar*_*ath 12

这将打印每个文件的第二行:

awk 'FNR==2'
Run Code Online (Sandbox Code Playgroud)

而这只是第一个文件的第二行:

awk 'NR==2'
Run Code Online (Sandbox Code Playgroud)


pot*_*ong 5

这可能对您有用:

sed '2q;d' file
Run Code Online (Sandbox Code Playgroud)