从任何Linux命令输出中省略第一行

时间:2011-09-06 10:34:56

标签: linux

我有一个要求,我想省略ls -latr "some path"输出中的第一行,因为我需要从下面的输出中删除total 136

enter image description here

所以我写了ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q排除了第一行,但是当文件夹为空时它不会省略它。请告诉我如何在任何linux命令输出中省略第一行

4 个答案:

答案 0 :(得分:211)

tail程序可以执行此操作:

ls -lart | tail -n +2

-n +2表示“开始在第二行输出上传递”。

答案 1 :(得分:140)

将其传递给awk

awk '{if(NR>1)print}'

sed

sed -n '1!p'

答案 2 :(得分:21)

ls -lart | tail -n +2 #argument means starting with line 2

答案 3 :(得分:18)

这是一种快速的hacky方式:ls -lart | grep -v ^total

基本上,删除任何以“total”开头的行,ls输出中只有第一行。

更通用的方式(适用于任何事情):

ls -lart | sed "1 d"

sed "1 d"表示只打印除第一行以外的所有内容。