5

输入:df -k

输出:

Filesystem            kbytes    used   avail capacity  Mounted on
/dev/dsk/c0t0d0s0    10332220  443748 9785150     5%    /
/devices                   0       0       0     0%    /devices
ctfs                       0       0       0     0%    /system/contract
proc                       0       0       0     0%    /proc
mnttab                     0       0       0     0%    /etc/mnttab
swap                 45475864    1688 45474176     1%    /etc/svc/volatile
objfs                      0       0       0     0%    /system/object
sharefs                    0       0       0     0%    /etc/dfs/sharetab
/dev/dsk/c0t0d0s3    10332220 3513927 6714971    35%    /usr

我想Filesystem kbytes used avail capacity Mounted on从输出中省略第一行。

df -k | tail -n+2在 linux 中使用来得到我想要的,但是在 SunOs 中我得到了

zenvo% df -k | tail -n+2
usage: tail [+/-[n][lbc][f]] [file]
   tail [+/-[n][l][r|f]] [file]

我怎样才能实现所需的输出

/dev/dsk/c0t0d0s0    10332220  443748 9785150     5%    /
/devices                   0       0       0     0%    /devices
ctfs                       0       0       0     0%    /system/contract
proc                       0       0       0     0%    /proc
mnttab                     0       0       0     0%    /etc/mnttab
swap                 45475864    1688 45474176     1%    /etc/svc/volatile
objfs                      0       0       0     0%    /system/object
sharefs                    0       0       0     0%    /etc/dfs/sharetab
/dev/dsk/c0t0d0s3    10332220 3513927 6714971    35%    /usr

注意:行数可能会改变

4

4 回答 4

41

我知道这是一个旧线程,但其中最短和最清晰:

df -k | sed 1d
于 2014-12-11T11:37:04.533 回答
4

我没有使用过 SunOS,但使用 sed 你应该可以像这样删除第一行:

df -k | sed -e /Filesystem/d

编辑:但你必须小心,文件系统这个词不会出现在输出的其他地方。更好的解决方案是:

df -k | sed -e /^Filesystem/d
于 2011-07-04T13:06:33.227 回答
1

关于什么:

df -k | tail -$((`df -k | wc -l`-1))
于 2011-07-04T13:08:56.963 回答
0

如果要省略任何结果的第一行,可以使用 tail:

<command> | tail -n +2

所以在你的情况下:

df -k | tail -n +2

https://man7.org/linux/man-pages/man1/tail.1.html

于 2020-07-18T12:52:54.077 回答