0
次のコードをPythonで書かれたcat |ファイルを開く代わりにgrepを実行します。grepと&と論理を組み合わせる
元のコード:
LOG_NAME="/raft/log/{}{}{}_{}_Rx_flow.log".format(NTIME.tm_year,str(NTIME.tm_mon).zfill(2),str(NTIME.tm_mday).zfill(2),str(NTIME.tm_hour).zfill(2))
print time.strftime("%Y/%m/%d %H:%M:%S") + " Log file name, RX restart, is: " + LOG_NAME
print time.strftime("%Y/%m/%d %H:%M:%S") + " ERRTIMEMIN value: " + ERRTIMEMIN + " RXRESTART message value: " + RXRESTART
LINK_LOG_FILE = open(LOG_NAME, "r")
ISRXRESTART=0
for REPline in LINK_LOG_FILE:
***if RXRESTART in REPline and (ERRTIMEMIN in REPline or ERRTIMEMIN1 in REPline) and ISRXRESTART==0:***
#Link restarted - correct behaviour.
print time.strftime("%Y/%m/%d %H:%M:%S") + " RX restarted - This is correct behaviour"
ISRXRESTART=1
私がファイルを開く行を削除し、猫と何かに*** ***
で次の行を変更し、例えば をgrepする必要があります。
os.popen("sshpass -p ssh [email protected]"+self.ipaddr+" cat "+LOG_NAME+" | egrep `"+device_start+" "+ERRTIMEMIN+`").read().strip()
をしかし、私はどのように結合するかわかりません&と同じgrepで
@fedorqui私は質問の最後の部分で正確に言った。 – Sarit8
[mcve]を含む方が良い。 – fedorqui