“好”实际上是一个命令。

目录
我是系统解决方案部的犬冢牙,一个热爱游戏和动漫的全能型御宅族。
这次我将写一篇关于 UNIX 操作系统(如 Linux)中使用的“nice”命令的博客。
关于这个不错的命令
nice 命令可以改变进程的相对优先级。
还有一个类似的命令叫做“renice”,但它会改变当前正在运行的程序(格式略有不同)。
*为了避免混淆,我们这次特意没有将其包含在内。
优先级和选项概要
关于优先级
优先级(nice 值)从 -20 调整到 19 。
数字越负,优先级越高;数字越正,优先级越低(为什么……)
要提高优先级,您需要 root 权限。
| 优先事项 | 价值 | 评论 |
| 高的 | -20 | 只有root用户才能更改 |
| ↕ | 0 | 初始值 |
| 低的 | 19 | root 用户和普通用户都可以进行更改。 |
关于选项
以下是一些不错的命令选项
| 选项 | 解释 |
| -【价值】 | 按指定值增加或减少优先级 |
| -n [值] | 按指定值增加或减少优先级 (如果未指定值, 则默认值为 10)。 |
| --调整=[值] | |
| - 帮助 | 需要更多帮助吗? |
| - 版本 | 显示版本 |
……是的!有很多事情需要注意,但基本上,只需记住 -n [值]
(注:如果您未明确指定此值,则将使用默认值(+10)
例如,运行名为 beyond.sh 的脚本,优先级为 -5,则可以使用以下格式:
# nice -n -5 /opt/beyond.sh
与其他进程相比,我们可以看到它的执行优先级(NI)为-5。
PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2818 root 15 -5 13004 1416 1208 S 0.0 0.3 0:00.05 /bin/bash /opt/beyond.sh
如何检查nice值
确认方法(示例)
您可以ps -l或top -c当前正在运行的进程的相对优先级 (NI)
ps -l
# ps -l FS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 2526 2503 0 80 0 - 35262 poll_s pts/0 00:00:00 sudo 4 S 0 2528 2526 0 80 0 - 22938 do_wai pts/0 00:00:00 su 4 S 0 2529 2528 0 80 0 - 3946 do_wai pts/0 00:00:00 bash 0 R 0 3315 2529 0 80 0 - 13267 - pts/0 00:00:00 ps
top -c
#top -c PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 571 root 20 0 474024 17456 6156 S 0.0 3.5 0:05.50 /usr/bin/python2 -Es /usr/sbin/tuned -l -P 341 polkitd 20 0 613016 9184 5076 S 0.0 1.8 0:00.20 /usr/lib/polkit-1/polkitd --no-debug 1474 root 20 0 447996 8968 6708 S 0.0 1.8 0:01.16 /usr/sbin/NetworkManager --no-daemondaemon 1 root 20 0 127992 6612 4128 S 0.0 1.3 0:03.88 /usr/lib/systemd/systemd --switched-root --system --deserialize 21 1499 root 20 0 102904 5512 3456 S 0.0 1.1 0:00.02 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth0.pid -lf /var/lib/NetworkManager/dhclient-+ 2818 root 15 -5 13004 1416 1208 S 0.0 0.3 0:00.05 /bin/bash /opt/beyond.sh
改变的好处
通过明确指定优先级,您可以将 CPU 资源分配给优先级更高的其他进程。
换句话说, CPU 的负载似乎可以相对降低!
嗯……我不太明白你的意思。
从人性的角度来看,我认为这你是在繁忙的日程中被分配到重要的工作,还是被分配到有更多时间完成的工作
如果你被分配到像前面提到的那种工作,你将难以应付,而且很难调整你的日程安排。
我认为,如果分配给你的工作有明确的优先级,即使同时还要处理其他任务,你也能顺利地完成这项工作
CPU 的情况也是如此(希望这能有所帮助)。
何时应该使用它?
那么,什么时候会用到这个好用的命令呢?
我们列举了它的一些用途!
- 使用 mysqldump 导出大量数据
- 在事后调查中,使用正则表达式对大量日志进行搜索时
- 运行大量批处理时
等等..
当您想要运行一个不太紧急且不太耗费资源的进程,而又不影响其他进程的处理速度时,!
它好在哪里?
嗯,到目前为止,我已经从各个方面研究过nice命令,但是……
这条命令到底好在哪里呢?
(我很好奇!)
我相信肯定有一些人对此感兴趣,所以我就把它作为专栏文章写在这里吧。
我研究了一下 nice 命令的起源!
我调查后发现有几种说法,
「您真是太好了,竟然为了其他用户降低了优先级!」
“你真好,还这么爱惜你的CPU。 ”
这似乎是一个表达对用户友好或赞扬的命令。
(我之前不知道降低优先级会使数值变为正值的原因。)
概括
以下是今天内容的简要概述:
- 基本格式很好 -n【值】
- 您可以更改优先级并运行它以降低 CPU 负载。
- 负值表示优先级较高,正值表示优先级较低(理想值范围:-20 至 19)
- 需要 root 权限才能提高优先级
最后
感谢您阅读这篇拙作博客到最后。
我会继续不定期更新,请大家随时关注。
我先走了。
5