我的nice
来自 GNU coreutils 9.1。我观察到这nice -15
相当于nice -n 15
:
nice # prints 0 for me, the base niceness is 0
nice -n 15 nice # prints 15, this is expected
sudo nice -n -15 nice # prints -15, this is expected
nice -15 nice # prints 15
-15
是一个负数。为什么它会增加上面最后一个例子中的友好度?手册(例如在 Debian 12 中)没有解释这一点。
答案1
这可移植语法-n
如果您想指定增量,则需要。如有疑问,请使用nice -n
.
参数中nice -15
并不是真正的负数。它是一个破折号与一个连接积极的数字。前导破折号表示它是一个选项。比较这个 例如 与kill -15
相当于kill -s 15
。同样nice -15
相当于nice -n 15
.
kill -15
并不像 那样令人困惑nice -15
,因为您不希望信号数为负数。如果nice
您感到困惑,因为对友善的调整可能是负数,并且 <dash><digit(s)> 肯定看起来像一个非正数。-15
在负数有意义的情况下,很容易将其解释为“负十五”。
请注意破折号后面的数字可能带有明确的符号:
nice -+15 nice # prints 15
sudo nice --15 nice # prints -15
不幸的是,--15
看起来有点像一个长选项(比较--help
:)和一个正数,这可能会增加混乱。这是更喜欢的另一个原因nice -n
。