从任何Linux命令输出中省略第一行
我有一个要求,我想忽略ls -latr "some path"
的输出中的第一行因为我需要从下面的输出中删除total 136
所以我写了ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q
ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q
排除了第一行,但是当文件夹是空的时候它不会忽略它。 请告诉我如何在任何linux命令输出中省略第一行
把它pipe到awk
:
awk '{if(NR>1)print}'
或sed
sed -n '1!p'
tail
程序可以做到这一点:
ls -lart | tail -n +2
-n +2
表示“在第二行输出开始通过”。
ls -lart | tail -n +2 #argument means starting with line 2
这是一个很快捷的方法: ls -lart | grep -v ^total
ls -lart | grep -v ^total
。
基本上,删除任何以“total”开始的行,在ls
输出中应该只是第一行。
更一般的方式(对于任何事物):
ls -lart | sed "1 d"
sed "1 d"
表示只打印第一行的所有内容。