Linux系统之nice命令的基本使用

简介: 【7月更文挑战第10天】Linux系统之nice命令的基本使用

在这里插入图片描述

一、nice命令介绍

1.1 nice命令简介

nice命令在Linux系统中是一个用于调整进程优先级的工具。通过nice值,用户可以控制程序运行时占用CPU资源的相对比例,从而实现对系统资源分配的微调。高的nice值表示更低的优先级,意味着程序会更少地占用CPU时间,给其他程序更多机会;反之,低的nice值表示更高的优先级。默认情况下,大部分程序以0的nice值运行。

1.2 进程优先级介绍

调度优先级决定对CPU的访问,进程的nice值影响优先级。nice值为-20到19 ,缺省为0,低nice值意味着高CPU优先级。

二、nice命令基本语法

2.1 nice命令的help帮助信息

查看 nice命令的help帮助信息

[root@jeven ~]# nice --help
Usage: nice [OPTION] [COMMAND [ARG]...]
Run COMMAND with an adjusted niceness, which affects process scheduling.
With no COMMAND, print the current niceness.  Niceness values range from
-20 (most favorable to the process) to 19 (least favorable to the process).

Mandatory arguments to long options are mandatory for short options too.
  -n, --adjustment=N   add integer N to the niceness (default 10)
      --help     display this help and exit
      --version  output version information and exit

NOTE: your shell may have its own version of nice, which usually supersedes
the version described here.  Please refer to your shell's documentation
for details about the options it supports.

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'nice invocation'
nice [-n adjust] command
  • -n adjust:可选参数,指定进程的nice值。adjust值范围通常是-20到19,-20(对进程最有利)到19(对进程最不利)。如果不指定,默认调整值为10。
  • command:需要以指定nice值运行的命令或程序。

2.2 nice命令选项解释

nice命令用途:调整进程的优先级,从而影响其调度。如果不指定命令,则打印当前的优先级。优先级值范围从-20(对进程最有利)到19(对进程最不利)。

命令格式:nice [选项] [命令 [参数]...]

选项说明:

选项 作用 等效短选项 默认值
-n, --adjustment=N 将整数N添加到优先级(默认为10) -n 10
--help 显示帮助信息并退出
--version 输出版本信息并退出

注意:

  • 您的shell可能有自己版本的nice命令,该版本通常会替代这里描述的版本。详情请参阅shell的文档。
  • GNU coreutils在线帮助:http://www.gnu.org/software/coreutils/
  • 完整文档,请运行:info coreutils 'nice invocation'

三、nice命令的基本使用

3.1 查看进程优先级

查看当前进程的优先级

[root@jeven ~]# ps -eo pid,comm,nice --sort=-nice |head
   PID COMMAND          NI
    37 khugepaged       19
  8992 alsactl          19
 17633 tracker-extract  19
 17642 tracker-miner-a   -
 17653 tracker-miner-f  19
 17660 tracker-miner-u   -
    36 ksmd              5
  9037 rtkit-daemon      1
     1 systemd           0

3.2 使用nice启动进程

使用nice命令,以优先级6打开file.txt文件。

nice -n 6 vim file.txt

另外开启一个终端,查看vim进程的优先级。

[root@jeven ~]# ps -eo pid,comm,nice --sort=-nice |grep vim
 21331 vim               6
 16166 vim               0

也可以通过进程的PID来查询

[root@jeven ~]# pidof vim
21331 16166
[root@jeven ~]# ps -p 21331 -o pid,ni,cmd
   PID  NI CMD
 21331   6 vim file.txt

3.3 提高优先级

  • 后台运行一个进程
ping www.baidu.com > ping_output.txt &
  • 查看进程优先级
 ps -p 22869 -o pid,ni,cmd

在这里插入图片描述

  • 调整优先级

要调整一个已在后台运行的进程的优先级(nice值)为10,你可以使用renice命令。首先,确保你已经获取了该进程的PID,正如你示例中提到的PID为22869。接下来,执行以下命令来进行调整。这条命令中,-n 10指定了新的nice值为10,-p 22869指定了要调整优先级的进程PID。执行后,系统会修改该进程的优先级。

renice -n 10 -p 22869

在这里插入图片描述

四、注意事项

  • 权限限制: 普通用户不能将nice值设置为负数或大幅度提高优先级,这是为了防止非授权用户抢占系统资源。
  • 调度策略: nice仅影响进程的CPU时间分配,并不保证绝对的执行顺序。Linux内核还使用其他调度策略,如实时优先级(通过chrt命令设置),来进一步管理进程的执行顺序。
  • 监控和调整: 使用如top、ps -eo pid,comm,nice,%cpu或htop等工具可以查看和调整正在运行的进程的nice值。
  • 通过合理使用nice命令,系统管理员和高级用户可以更好地控制系统资源的分配,确保关键任务或对响应时间敏感的应用程序能够获得足够的处理能力。
相关文章
|
18天前
|
Linux
Linux命令拓展:为cp和mv添加进度显示
好了,就这样,让你的Linux复制体验充满乐趣吧!记住,每一个冷冰冰的命令背后,都有方法让它变得热情起来。
58 8
|
23天前
|
安全 Linux 定位技术
Linux环境下必备的基础命令概览
以上就是Linux系统中的基本命令和工具,掌握它们就能帮你在Linux世界里游刃有余。这其实就像是学习驾驭一辆新车,熟悉了仪表盘,调整好了座椅,之后的旅程就只需要享受风驰电掣的乐趣了。
42 4
|
24天前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree
|
Linux 索引
linux命令—ls
`ls` 是 Linux 系统中用于列出目录内容的基础命令,功能强大且使用频率极高。它可以帮助用户查看文件、分析磁盘空间及检查权限等。常用选项如 `-l` 显示详细信息,`-a` 包含隐藏文件,`-h` 以易读格式展示大小,`-t` 按修改时间排序等。通过组合选项,可实现复杂需求,如递归遍历目录(`-R`)、显示 inode 号(`-i`)或结合正则过滤特定文件。注意权限限制、特殊字符处理及大规模目录操作可能带来的性能问题。掌握 `ls` 是高效使用 Linux 的关键一步。
|
27天前
|
Unix Linux
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。
|
27天前
|
Unix Linux
linux命令—pwd
`pwd` 是 Linux/Unix 系统中的基础命令,用于显示用户当前所在的工作目录路径,帮助确认在文件系统中的位置。其核心功能包括打印逻辑路径(默认,-L 选项)和物理路径(-P 选项)。典型应用场景涵盖确认当前位置、调试符号链接问题及脚本编程中动态获取与操作路径。使用时需注意符号链接的区别、参数选择以及特殊字符处理,确保命令正确执行并满足需求。
|
1月前
|
Linux
linux文件重命名命令
本指南介绍Linux文件重命名方法,包括单文件操作的`mv`命令和批量处理的`rename`命令。`mv`可简单更改文件名并保留扩展名,如`mv old_file.txt new_name.txt`;`rename`支持正则表达式,适用于复杂批量操作,如`rename &#39;s/2023/2024/&#39; *.log`。提供实用技巧如大小写转换、数字序列处理等,并提醒覆盖风险与版本差异,建议使用`-n`参数预览效果。
|
1月前
|
存储 Linux 内存技术
linux系统查看硬盘序列号
本文介绍在Linux系统中查看硬盘信息的三种方法:1) 使用`hdparm`工具,通过`sudo hdparm -i /dev/sda`获取硬盘序列号和型号;2) 使用`smartctl`工具,不仅可查序列号和型号,还能了解硬盘健康状态;3) 使用`lshw`命令显示存储设备拓扑信息。此外,提供通用技巧如用`lsblk`确认磁盘标识,及注意事项,例如管理员权限和云主机可能隐藏物理序列号等。
|
1月前
|
安全 Linux 网络安全
Linux wget 常用命令详解
wget 是一款强大的命令行下载工具,支持 HTTP/HTTPS/FTP 协议。本文详细介绍其基础用法、高效下载参数、高级应用场景及参数速查。内容涵盖断点续传(-c)、后台下载(-b)、限速下载(--limit-rate)、递归下载(-r)、整站镜像(-mk)等实用功能,同时提供文件管理、网络优化与安全下载配置方法,助您高效完成各类下载任务。
|
2月前
|
消息中间件 Linux Kafka
linux命令使用消费kafka的生产者、消费者
linux命令使用消费kafka的生产者、消费者
128 16