我正在尝试映射我的网络并运行命令nmap 192.168.1.v[i] -O
但是我想在PC上运行此命令(SSH连接)。
这是我正在使用的代码:
from pexpect import pxssh
import re
import time
file=open('/home/ips',"r")
file_contents = file.read()
file.close()
x = re.findall(r'[0-9]+(?:\.[0-9]+){3}',file_contents)
print(len(x))
#find the ips from a file
s = pxssh.pxssh()
if not s.login('192.168.1.8', 'user', 'mypassword')
print(
"SSH session failed on login.")
print(
str(s))
else:
print(
"SSH session login successful")
for i in range(len(x)):
print(x[i])
command="nmap "+ x[i] +" -O"
s.sendline(command)
s.prompt() # match the prompt
print(
s.before ) # print everything before the prompt.
s.logout()
但是for循环在命令结束之前一直运行。 如何控制命令是否仍在运行?