paramiko 使用,保证ssh连接关闭后,远程执行的命令或者脚本继续在后台执行

最近做python unittest自动化,需要远程连到web server上抓包,然后远程copy出来 再用scapy分析数据包中http报头。 当远程连到web server上执行tcpdump 抓包的时候,发现 执行完 exec_command(cmd) ,,,self._new_ssh.close()  后远程web server上的执行的tcpdump 进程也退出了,还没来得及抓包,,, 找了半天的原因,也不知道为什么,,,当时想到了是ssh连接断掉后,tcpdump的父进程没了tcpdump会退出,,,但用了后台执行命令也不行,,最后找到原因要用如下命令:

cmd = 'nohup tcpdump -i %s -nn -s 0 host %s -w %s > /dev/null 2>&1 &' %(int_name,self.waf_ip,remote_pcap_file)

如果想抓完包停止tcpdump 命令,可以用pidof tcpdump 或者pid然后再kill -9 pid .

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值