首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Fabric终止远程主机上的进程

使用Fabric终止远程主机上的进程
EN

Stack Overflow用户
提问于 2013-06-02 05:55:41
回答 1查看 3.1K关注 0票数 2

我正在使用Fabric编写一个脚本,它需要远程终止一个进程。

(这意味着该命令最终以/bin/bash命令的形式执行)

我目前拥有的代码如下:

在我有一个kill.sh文件中

代码语言:javascript
复制
  /bin/kill  $(ps -ef | grep multiserver.jar | grep -v bin/sh | grep -v /bin/bash | grep -v sh | grep python  | grep -v /usr/bin/java | grep -v /usr/bin/python | grep -v sh  |  awk '{print $2}')

我使用以下命令在远程主机上的Fabric中运行它

代码语言:javascript
复制
     local("scp "  + "kill.sh " + user +"@" + server_address + ":" + directory) 
     run ("chmod u+x kill.sh")
     run("./kill.sh")

但是,我得到了以下错误消息

代码语言:javascript
复制
      out: Usage:
      [] out:  kill [options] <pid> [...]


      Fatal error: run() received nonzero return code 1 while executing!

   Requested: ./kill.sh
    Executed: /bin/bash -l -c "cd ...  && ./kill.sh"

有人知道我做错了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-22 03:36:01

在使用fabric读取日志来解决this issue问题时,我编写了杀死远程进程的命令:

代码语言:javascript
复制
with settings(warn_only=True):
    sudo("kill -9 `ps aux | <pipeline of greps> | awk '{print $2}'`")

希望这能有所帮助。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16877655

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档