Как я могу контролировать, работает ли команда SSH? - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь сопоставить свою сеть и запустить команду nmap 192.168.1.v[i] -O

Но я хочу запустить эту команду на моем ПК (соединение 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 продолжает работать до завершения команды. Как я могу контролировать выполнение команды?

...