正则表达式 – Bash – killall -r不匹配

前端之家收集整理的这篇文章主要介绍了正则表达式 – Bash – killall -r不匹配前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有许多名称相似的进程,如“proc_1asd,proc_2wqe,proc_3zxc”

我需要向他们发送一个非残酷的中断信号,pkill -f可以工作,但它没有安装.

我正在尝试使用killall -r proc_ *,但是我收到了这个错误

proc_*: no process found

我的印象是我做的事非常愚蠢,但我不知道是什么.

这是一个图像(进程的实际名称是jnode_something)

pgrep -lf’proc _.*’返回

15070 jnode_0 -cp lib/xstream-1.4.7.jar:build/classes sandBox.GridNode Configs/0_config.txt Logs
15071 jnode_1 -cp lib/xstream-1.4.7.jar:build/classes sandBox.GridNode Configs/1_config.txt Logs
15072 jnode_2 -cp lib/xstream-1.4.7.jar:build/classes sandBox.GridNode Configs/2_config.txt Logs
15073 jnode_3 -cp lib/xstream-1.4.7.jar:build/classes sandBox.GridNode Configs/3_config.txt Logs
15074 jnode_4 -cp lib/xstream-1.4.7.jar:build/classes sandBox.GridNode Configs/4_config.txt Logs

解决方法

看起来像矫枉过正,但如果你能从pgrep获得PID,只需将它们作为参数来杀死.就像是:

pgrep -lf 'proc_.*' | awk '{print $1}' | xargs kill -f

猜你在找的正则表达式相关文章