2015-05-14 5 views
1

Я пытаюсь заменить значения строк на commands.getstatusoutput, но он дает мне ошибку ниже:getstatusoutput возвращающие «неподдерживаемый тип операнда (ов)»

ping_out = commands.getstatusoutput("ssh %s 'ping -c 2 %s'") % (jmp, ip) 

jmp и ip мои строковые переменные.

Когда я вызываю выше команду, она дает мне эту ошибку:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: unsupported operand type(s) for %: 'tuple' and 'tuple' 
>>> 

Как я могу это исправить?

+1

ли вы имеете в виду 'ping_out = commands.getstatusoutput (" SSH% S «пинг -c 2% s '"% (jmp, ip))' вместо? – Evert

ответ

0
("ssh %s 'ping -c 2 %s'") % (jmp, ip) 

Скобки ошибаетесь:

("ssh %s 'ping -c 2 %s'" % (jmp, ip)) 

% (jmp, ip) принадлежат "ssh %s 'ping -c 2 %s'" строки

Смежные вопросы