它适用于任何 shell 脚本吗nice
,还是仅适用于基本的 Linux 命令?
例如,如果我有一个包含sort
函数的自定义 shell 脚本,并且我调用
nice myscript.sh
脚本中的调度优先级是否nice
适用?如果在后台运行(使用或),是否仍可行?sort
nice
myscript.sh
&
nohup
答案1
是的,该nice
命令可以与脚本一起使用。实际上,假设您使用的是 bash,nice 命令将应用于 bash 及其所有可能的子进程。当进程在后台运行时,nice 优先级不会改变。
您可以自己测试一下,看看 nice 确实会影响 bash 脚本的优先级。只需执行您想要的任何脚本,然后使用ps
即可查看优先级:
ps -eo pid,pri,cmd
答案2
Nice 适用于运行命令时启动的进程和任何子进程。因此,您的问题的答案是肯定的,它适用于任何命令/脚本,即使它们被置于后台。
答案3
是的,nice
可以使用脚本,例如:
nice ./example.sh
如果要使用脚本中的命令调整调度优先级,可以使用renice
。以下是示例脚本的内容:
#!/bin/bash
echo "Hello world"
renice -n 10 -p $$
echo "Now the niceness value has been changed to 10."
友善度值的范围从 -20(对流程最有利)到 19(对流程最不利)。