有没有办法忽略头文行在UNIX排序?

前端之家收集整理的这篇文章主要介绍了有没有办法忽略头文行在UNIX排序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个固定宽度字段文件,我试图使用UNIX(Cygwin,在我的情况下)排序实用程序排序。

问题是在文件的顶部有一个两行头被排序到文件底部(因为每个标题行以冒号开头)。

有一种方法来告诉排序,“通过未排序的前两行”或指定排序冒号行到顶部的排序 – 剩余的行总是以6位数字开始(这实际上是关键I ‘排序)如果这有帮助。

例:

:0:12345
:1:6:2:3:8:4:2
010005TSTDOG_FOOD01
500123TSTMY_RADAR00
222334NOTALINEOUT01
477821USASHUTTLES21
325611LVEANOTHERS00

应排序:

:0:12345
:1:6:2:3:8:4:2
010005TSTDOG_FOOD01
222334NOTALINEOUT01
325611LVEANOTHERS00
477821USASHUTTLES21
500123TSTMY_RADAR00
(head -n 2 <file> && tail -n +3 <file> | sort) > newfile

括号创建一个subshel​​l,包装stdout,所以你可以管道它或重定向,就像它来自一个单一的命令。

猜你在找的Bash相关文章