![为什么带有负参数的“nice”(例如“nice -15”)会增加好感度?](https://linux22.com/image/230157/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%B8%A6%E6%9C%89%E8%B4%9F%E5%8F%82%E6%95%B0%E7%9A%84%E2%80%9Cnice%E2%80%9D%EF%BC%88%E4%BE%8B%E5%A6%82%E2%80%9Cnice%20-15%E2%80%9D%EF%BC%89%E4%BC%9A%E5%A2%9E%E5%8A%A0%E5%A5%BD%E6%84%9F%E5%BA%A6%EF%BC%9F.png)
我的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
。