Linux进程管理 – 管理进程

查看:SIGNAL 信号种类

kill 命令

kill { -n 9 | -9} [进程PID号] ## 针对<进程ID>发送<信号编号>,来强制终止<进程>

kill {-s KILL | -KILL} [进程PID号] ## 针对<进程ID >发送<信号名称>,来强制终止<进程>

pkill 命令

pkill -9 httpd ## 针对<进程名称>所对应的<进程PID>发送<信号编号>,来终止<进程>

pkill -KILL -F /run/httpd/httpd.pid ## 针对<PID进程文件>中的<进程PID>,发送<信号名称>,来强制终止<进程>

创建:匿名管道(pipe)(★重点★)

了解:Linux Shell 的 <| 管道符>工作原理

管道符 ( | 和 |& )

在Linux中,我们可以通过<| 管道符>来创建一个<匿名管道>。

管道符 | :将<前一个命令>的<stdout标准输出>作为<后一个命令>的<stdin标准输入>

管道符|& :将<前一个命令>的<stdout标准输出/stderr标准错误输出>作为<后一个命令>的<stdin标准输入>

案例:

1.设置:用户密码

echo “123” | passwd user01 --stdin

或者

echo “user01:123” | chpasswd

2.输出过滤

cat /etc/passwd | grep root

xargs 命令

(1)功能

xargs 命令:可以通过<| 管道符>接受<字符串>,并将<接收到的字符串>依据<默认的空格分隔符>分解成为<许多参数>。

然后,将<这些参数>作为<命令行参数>传递给<后面的命令>,<后面命令>则可以使用这些<命令行参数>来执行。

(2)xargs 命令 和 | 管道符 的区别

1 发现问题:针对不支持<标准输入>的<命令>,无法通过<| 管道符>来传递数据

<很多程序>不处理<标准输入>(例如:kill,rm),如果<这些程序>没有指定<命令行参数>,它是不会从<标准输入>中读取<数据>的

举例:
# echo “/root/anaconda-ks.cfg” | rm  ##无法执行

2 解决问题:针对不支持<标准输入>的<命令>,可以通过<| 管道符> + <xargs 命令>来传递数据

举例:
# echo “/root/anaconda-ks.cfg” | xargs rm ##删除成功
© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发