2013-07-11 7 views
0

나는 파이썬으로 SSH를 통해 모든 여러 명령을 실행하려고한다. ...파이썬으로 SSH를 통해 명령을 실행

때마다, 나는 "예상치 못한 ("오류가

이에 대한 올바른 구문을주십시오 주셔서 감사합니다 지금 현재로

os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' 'echo "<td>" $(uname -ri) "</td>"; free | grep "Mem:" | awk '\''{ print "<td>" $2/1024 " MB (" int($4*100/$2) "%) </td>" }'\''; free | grep "Swap:" | awk '\''{ print "<td>" int($3*100/$2) "%" }'\''; echo "</td><td>" $(cat /proc/cpuinfo | grep "processor" | wc -l) "@" $(cat /proc/cpuinfo | grep "MHz" | sort -u | awk '\''{ print $4 }'\'') "Mhz" $(cat /proc/cpuinfo | grep "cache size" | sort -u | awk '\''{ print "(" $4 " " $5 ")</td>" }'\'')'" ''').read() 

, 내가 사용하고 있습니다 :

data1=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' 'echo "<td>" $(uname -ri) "</td>";' ''').read().rstrip() 
data2=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' free | grep "Mem:" | awk '{print "<td>" $2/1024 " MB("int($4*100/$2)"%)</td>"}' ''').read().rstrip() 
data3=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' free | grep "Swap:" | awk '{ print "<td>" int($3*100/$2) "%" }' ''').read().rstrip() 
data4=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' cat /proc/cpuinfo | grep "processor" | wc -l ''').read().rstrip() 
data5=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' cat /proc/cpuinfo | grep "MHz" | sort -u | awk '{ print $4 }' ''').read().rstrip() 
data6=os.popen('''ssh -o BatchMode=yes -o StrictHostKeyChecking=no '''+host+''' cat /proc/cpuinfo | grep "cache size" | sort -u | awk '{ print "(" $4 " " $5 ")</td>" }' ''').read().rstrip() 
+0

코드가 무엇을 이스케이프/중첩 수준에 무엇에 관한 읽기 매우 어렵다. 추가 줄 바꿈과 일부 문자열 형식화 명령 "% s % s"% (param1, param2)'가 도움이됩니다. – mnagel

답변

관련 문제