我使用自動SSH腳本通過SSH複製/運行/將硬件測試記錄到幾臺計算機上,除了一件事以外,一切正常。測試文件應該每30分鐘運行一次並收集數據,然後將其寫入文件直至被殺死。缺少一個更好的示例:while(True)loop break SSH script
注意:這些文件都不是實際的代碼。我沒有在我面前複製它。
file.py:
#!/usr/bin/env python
import os
idleUsage = []
sleepTime = 1800
while(True):
holder = os.popen('mpstat | awk \'{printf("%s\n", $9)}\'')
idleUsage.append(100.0 - float(holder[1]))
f = open("output.log", 'w')
f.write(%idleUsage)
f.close()
sleep(sleepTime)
automatic-ssh.sh:
#!/bin/bash
autossh uname1 password1 ip1 command <----gets stuck after ssh runs
autossh uname2 password2 ip2 command
autossh uname3 password2 ip3 command
沒有失敗,它卡住上運行的命令。我已經嘗試過'命令&',並且在整行代碼末尾添加了&符號。任何人都有一些建議?
我認爲你需要做'os.system(「sar | grep kb」)......不知道,但我不認爲這是一個有效的蟒蛇行... – 2012-07-13 16:25:12
這看起來不像Python句法。 – 2012-07-13 16:25:16
我知道這是不正確的語法,但它只是一個例子,甚至在代碼中。我關心的是讓while循環運行而不停止我的auto-ssh腳本。 – 2012-07-13 17:18:49