shell renice 改变系统上已运行命令的优先级
有时你想改变系统上已运行命令的优先级。这正是renice命令可以做到的。它允许你指定 运行进程的PID来改变它的优先级。
renice命令有一些限制:
1.只能对属于你的进程执行renice;
2.只能通过renice降低进程的优先级;
3.root用户可以通过renice来任意调整进程的优先级。如果想完全控制运行进程,必须以root账户身份登录或使用sudo命令。
code
macname@MacdeMacBook-Pro Desktop % cat test.sh #!/bin/bash # Trapping the script exit # trap "echo Goodbye..." EXIT # count=1 while [ $count -le 5 ] do echo "Loop #$count" sleep 1 count=$[ $count + 1 ] done macname@localhost Desktop % macname@localhost Desktop % ./test.sh Loop #1 Loop #2 Loop #3 Loop #4 Loop #5 ^Z zsh: suspended ./test.sh macname@localhost Desktop % macname@localhost Desktop % jobs -l [1] + 52431 suspended ./test.sh macname@localhost Desktop % macname@localhost Desktop % macname@localhost Desktop % ps -p 52431 -o pid,ppid,ni PID PPID NI 52431 40368 0 macname@localhost Desktop % renice -n 10 -p 52431 macname@localhost Desktop % ps -p 52431 -o pid,ppid,ni PID PPID NI 52431 40368 10 macname@localhost Desktop %