在继续运行脚本的同时从python脚本退出命令

时间:2017-05-31 05:39:48

标签: python linux command

我正在尝试使用Kali Linux和监控模式自动执行将deAuth数据包发送到网络的过程。对于命令

airodump-ng <interface name>

列出了附近的网络,这些网络在终端窗口中不断更新。要运行下一个命令(通常),用户需要使用Ctrl + CCtrl + Z退出命令并运行下一个命令。

到目前为止,我已经能够使用subprocess.call()(并在必要时raw_input())从python脚本中运行所有必需的命令,但是退出airodump-ng函数会导致退出脚本也是如此。

是否可以在不退出python脚本的情况下退出上一个命令的运行输出,即可以通过subprocess.call()使用的命令?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:0)

您可以使用nohup命令在后台运行命令,并在停留在同一终端时让脚本在后台运行,但是,您无法从该脚本访问结果您可以使用cat nohup.out来查看脚本的结果

您可以按照以下步骤进行操作

nohup python scriptname.py &

这将使您的脚本在后台运行,并将脚本的结果转储到运行名为nohup.out的命令的同一文件夹中的文件中

之后检查脚本执行的结果 做

cat nohup.out 

查看脚本的所有结果 或

tail nohup.out 

检查脚本的最后10行。

这样做的好处是您将保持相同的终端提示并且能够执行

airodump-ng <interface name>

请注意,您也可以

 airodump-ng <interface name> &

如果你想让它在后台运行

nohup airodump-ng <interface name> &

如果您希望将结果转储到nohup.out文件中,该文件将在当前工作文件夹中运行此命令后创建。