了解排序选项

了解排序选项

第1部分

ps -e | sort -k 1 -nr 

上述命令的解释是什么?我想了解 的作用-nr。手册页中没有明确给出此类内容。

第2部分

当您打开 head 的手册页时,选项之一指出:

-c,--bytes=[-]K

打印每个文件的前 K 字节;以“-”开头,打印每个文件除最后 K 字节之外的所有字节

如何解释-c, --bytes=[-]K

答案1

第1部分

  1. ps是报告当前进程快照的命令,参数-e指定ps报告所有进程。
  2. |是一个管道。这允许您将上一个命令的输出重定向到另一个命令。在此示例中,您将输出重定向ps -esort
  3. sort是一个允许您对来自 stdin 的行进行排序的命令。参数-k 1通过键排序,在本例中为1。这意味着您将根据ps -ePID 数字的第一列进行排序。该-nr参数按相反(降序)顺序对输入进行数字排序。
  4. 注意:这个-n参数在这个实现中实际上是多余的。您不需要它,因为您已经指定sort按第一列排序。ps -e | grep -rk 1会一样地工作。

第2部分

  1. -cor参数--bytes=[-]K允许您打印文件的第一个或除最后 X 千字节以外的所有千字节,其中 X 是您要打印的千字节数。要打印前 X 千字节,只需在 后面添加一个数字-c。要打印除最后千字节之外的所有内容,请-在 X 千字节前面添加。

  2. 还要注意,使用 时-c,您不需要指定后面跟的数字K。此语法仅在参数中才需要--bytes=

答案2

第1部分:-n用于数值排序,-r用于逆向排序,因此-nr组合按数值降序排序。

第 2 部分:您可以使用-c(短选项)或--bytes=(长选项,更多输入,但没有区别)。例如--bytes=-1024最后 1024 个字节。

答案3

此外,括号之间的项目[]可以解释为“可选”。因此,--bytes=[-]K意味着您可以使用“破折号”来表示“...的最后”,而不用它来表示“...的开始”。由于“K”不在括号内,因此意味着该选项是必需的--bytes

相关内容