相关疑难解决方法(0)

使用bash和regex在一行中查找并终止进程

我经常需要在编程期间杀死进程.

我现在这样做的方式是:

[~]$ ps aux | grep 'python csp_build.py'
user    5124  1.0  0.3 214588 13852 pts/4    Sl+  11:19   0:00 python csp_build.py
user    5373  0.0  0.0   8096   960 pts/6    S+   11:20   0:00 grep python csp_build.py
[~]$ kill 5124
Run Code Online (Sandbox Code Playgroud)

如何自动提取进程ID并在同一行中终止它?

像这样:

[~]$ ps aux | grep 'python csp_build.py' | kill <regex that returns the pid>
Run Code Online (Sandbox Code Playgroud)

regex bash terminal awk

595
推荐指数
13
解决办法
46万
查看次数

如何检查进程ID(PID)是否存在

在bash脚本中,我想执行以下操作(在伪代码中):

if [ a process exists with $PID ]; then

    kill $PID 

fi
Run Code Online (Sandbox Code Playgroud)

条件语句的恰当表达式是什么?

bash pid process

169
推荐指数
7
解决办法
25万
查看次数

试图通过shell脚本来杀死进程

我想通过shell脚本来杀死进程,它给了我错误.这是我到目前为止所尝试的:

当我试图杀死MEMCACHE它给我的错误,如"杀:没有这样的过程",我用下面的命令:

ps -ef | grep "memcache" | awk '{print $2}' | xargs kill; 
Run Code Online (Sandbox Code Playgroud)

或者如果尝试如下:

kill -9 $(pidof memcache)
Run Code Online (Sandbox Code Playgroud)

我得到如下错误:":参数必须是进程或作业ID"

当我直接在命令提示符下运行进程时正在运行:

ring@ubuntu:~/parasol$ ps aux | grep memcache     
memcache   873  0.0  0.0 323220  1188 ?        Sl   22:56   0:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
ring      1714  0.0  0.0   9384   920 pts/0    S+   23:45   0:00 grep --color=auto memcache
Run Code Online (Sandbox Code Playgroud)

我REFF到https://askubuntu.com/questions/239923/shell-script-to-9-kill-based-on-nameshell脚本来捕获进程ID,如果存在杀死它

我的Ubuntu版本:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.2 LTS"
NAME="Ubuntu"
VERSION="12.04.2 LTS, Precise Pangolin"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu precise (12.04.2 …
Run Code Online (Sandbox Code Playgroud)

bash shell ubuntu

2
推荐指数
1
解决办法
2万
查看次数

如何停止 bash 脚本中的上一个命令?

我正在尝试构建一个在 Web 服务器上运行单元测试的 bash 脚本。

我希望运行一个简单的 bash 脚本,该脚本可以(例如)在 makefile 中执行以下操作:

  1. 启动网络服务器
  2. 运行单元测试
  3. 停止网络服务器

假设 Web 服务器是为 NodeJS 编写的,它可能如下所示:

npm start &
sleep 5
npm test
Run Code Online (Sandbox Code Playgroud)

这种方法的问题是 Web 服务器将继续运行。舞台结束后如何停止npm test

bash node.js

0
推荐指数
1
解决办法
2264
查看次数

标签 统计

bash ×4

awk ×1

node.js ×1

pid ×1

process ×1

regex ×1

shell ×1

terminal ×1

ubuntu ×1