&
- 将命令置于后台运行如不配置重定向,程序直接在终端输出内容,影响使用。
>
:标准输出写到文件(会清空已有内容)>>
:标准输出追加到文件2>
、2>>
:标准错误重定向2>&1
:将标准错误也输出到和标准输出一样的位置/dev/null
:相当于 Linux 中的黑洞,不需要的数据可以抛到这里
jobs
- 管理任务ding@ding-server:~$ jobs
[1]- Stopped vim
[2] Running ping -c 200 127.0.0.1 > /dev/null &
[3]+ Stopped nano
ding@ding-server:~$ jobs -l # 同时列出 PID
[1]- 3789471 Stopped vim
[2] 3790019 Running ping -c 200 127.0.0.1 > /dev/null &
[3]+ 3790030 Stopped (signal) nano
任务编号后的符号表示的含义:
+
:最近被放到后台的任务代码(默认的使用任务)-
:最近第二个被放到后台的任务代码fg
- 将放在后台的任务置于前台运行# 将最近被放到后台的任务(+)放在前台
fg
# 将最近第二个被放到后台的任务(-)放在前台
fg -
# 将特定任务编号的任务放在前台
fg %任务编号
# 或
fg 任务编号
bg
- 将放在后台的任务置于后台运行# 将最近被放到后台的任务(+)置于后台运行
bg
# 将最近第二个被放到后台的任务(-)置于后台运行
bg -
# 将特定任务编号的任务置于后台运行
bg %任务编号
# 或
bg 任务编号
执行完 bg
后,任务状态由 Stopped
变为 Running
,且命令后多了一个 &
。
root@ding-server:~# find / > /dev/null
^Z # 按 Ctrl + Z
[1]+ Stopped find / > /dev/null
root@ding-server:~# jobs ; bg ; jobs
[1]+ Stopped find / > /dev/null # 之前停止
[1]+ find / > /dev/null &
[1]+ Running find / > /dev/null & # 之后运行
分为 PRI (priority) 和 NI (nice)。前者由内核动态调整,后者用户可以有限制地自定义,都是越低优先级越高。
root 用户可以调所有进程的 NI,范围为 -20~19;普通用户仅可调自己进程的 NI,范围为 0~19,且只能调高。
一般的,调整 NI 后的 PRI = 调整前的 PRI + NI,但最终结果由系统动态决定。
常用于重载、强制关闭进程、关闭后台进程。
常用的信号:
1
或 SIGHUP
:重新读取一次成熟的配置文件(类似 reload
)2
或 SIGINT
:等价于从键盘输入 Ctrl + C9
或 SIGKILL
:立即强制删除任务15
或 SIGTERM
:以正常方式终止任务uptime
- 打印系统运行时长和平均负载平均负载:表示单位时间内的平均进程数量,计量状态为运行中的或不可中断的进程。如果超过 1,注意查看系统进程是否太过频繁。
ps
- 查看进程ps -l
ps aux
ps -l
的格式一样ps -lA
ps axjf
top
- 查看系统信息和进程信息top
top
命令执行结果的前 5 行为系统整体的统计信息,其所代表的含义如下:
uptime
一样# 在执行命令时设置
nice -n 数字 命令
# 中途修改
renice 数字 PID
kill
、killall
- 在命令行中管理进程一般在 root 用户下运行。
# 给单个进程发送信号(需知道 PID 或 任务编号)
kill [-信号] PID
# 或
kill [-信号] %任务编号
# 给多个进程发送信号(需知道命令名的一部分)
killall [-i] [-信号] 命令名的一部分 # 如果加 -i 参数,发送信号前都会让你确认
htop
- 比 top
功能更多需要安装。
可以通过键盘或鼠标操作。