Eu tenho um problema em obter alguma saída de código linux em python. Eu acho que é por causa de personagens de escape
O comando que estou tentando executar
nmap 192.168.1.* -p T:80 --open | awk "/is up/ {print up}; {gsub (/(|)/,""); up = $NF}"
e eu quero substituir o 192.168.1. * com uma variável de string como
network = "192.168.1.*"
nmap + network + -p T:80 --open | awk "/is up/ {print up}; {gsub (/(|)/,""); up = $NF}"
Toda vez que eu tento receber erro. Obrigado pela resposta!
Respostas:
0 para resposta № 1Estou interpretando sua pergunta como uma questão relacionada ao bash
Usando uma variável de string funciona assim:
$ export network="192.168.1.*"
$ nmap $network -p T:80 --open | awk "/is up/ {print up}; {gsub (/(|)/,""); up = $NF}"
Eu não chequei o resto do comando, embora ...
0 para resposta № 2
Eu encontrei a solução como esta
command = "nmap "+network+ " -p T:80 --open | awk " + r""""/is up/ {print up}; {gsub (/(|)/,""); up = $NF}""""
output = str(os.popen(command).read()).strip()
print output
obrigado mesmo assim ...