我有一个要求,我想从ls -latr "some path"的输出中省略第一行,因为我需要从下面的输出中删除total 136
ls -latr "some path"
total 136
所以我写了ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q,它排除了第一行,但是当文件夹为空时,它不会省略它。请告诉我如何在任何linux命令输出中省略第一行
ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q
c3frrgcw1#
tail程序可以做到这一点:
tail
ls -lart | tail -n +2
-n +2表示“开始通过第二行输出”。
-n +2
k4aesqcs2#
将其通过管道传输到awk:
awk
awk '{if(NR>1)print}'
或sed
sed
sed -n '1!p'
rnmwe5a23#
ls -lart | tail -n +2 #argument means starting with line 2
9rnv2umw4#
这是一个快速的Hacky方法:ls -lart | grep -v ^total .基本上,删除所有以“total”开头的行,在ls输出中,这应该只是第一行。一个更一般的方法(对于任何事情):ls -lart | sed "1 d"sed "1 d"表示只打印第一行以外的所有内容。
ls -lart | grep -v ^total
ls
ls -lart | sed "1 d"
sed "1 d"
1l5u6lss5#
你可以使用awk命令:对于命令输出,请使用管道:| awk 'NR>1'对于文件输出:awk 'NR>1' file.csv
| awk 'NR>1'
awk 'NR>1' file.csv
5条答案
按热度按时间c3frrgcw1#
tail
程序可以做到这一点:-n +2
表示“开始通过第二行输出”。k4aesqcs2#
将其通过管道传输到
awk
:或
sed
rnmwe5a23#
9rnv2umw4#
这是一个快速的Hacky方法:
ls -lart | grep -v ^total
.基本上,删除所有以“total”开头的行,在
ls
输出中,这应该只是第一行。一个更一般的方法(对于任何事情):
ls -lart | sed "1 d"
sed "1 d"
表示只打印第一行以外的所有内容。1l5u6lss5#
你可以使用
awk
命令:对于命令输出,请使用管道:
| awk 'NR>1'
对于文件输出:
awk 'NR>1' file.csv