Fabric非零返回码137

时间:2016-06-28 16:14:10

标签: python linux celery fabric

我在面料中有以下任务,旨在在紧急情况下强行杀死所有芹菜工人

def brute_kill_cel_workers():
    with settings(sudo_user="operatore"):
       sudo("sudo ps aux|grep 'celery worker'|awk '{print $2}'|xargs sudo kill -9")

失败了

Fatal error: sudo() received nonzero return code 137 while executing!

这是为什么? commnd本身在ssh shell中工作正常,因为用户" operatore"在服务器上。或者至少我怎样才能让织物给我一些更多的信息.​​.....

我还尝试了sudo("ps aux|grep 'celery worker'|awk '{print $2}'|xargs kill -9")run("sudo ps aux|grep 'celery worker'|awk '{print $2}'|xargs sudo kill -9")

1 个答案:

答案 0 :(得分:1)

当您使用SIGKILL(kill -9)杀死Celery时,您将获得返回码:128 + 9(请参阅this list of exit codes)。

如果在使用ssh运行该命令时检查返回代码,您将看到代码相同,但只是没有处理:执行echo $?时(显示最后一个命令的退出代码)用ssh执行命令行后,你也会得到137。