2015-10-13 60 views
1

我有一個批處理腳本在循環中連續運行python腳本。從Python到.txt文件

:start 
python log_capture.py > log.txt 
goto start 

我想在.txt文件中打印每個迭代的輸出。我正在使用以下命令從log_capture.py獲取輸出到一個log.txt文件。

python log_capture.py >log.txt 

但是在下一個循環中,來自先前迭代的日誌被覆蓋。如何防止log.txt文件被覆蓋,或者說可以將每次迭代的輸出保存在不同的log.txt文件中

+2

爲什麼不讓python腳本創建/寫入文件?然後,您可以在腳本中動態創建文件名。 –

+0

你在bash中嘗試了'for'嗎? – geekazoid

+1

只是將它從'> log.txt'更改爲'>> log.txt'以追加..... – postelrich

回答

1

可以使用>>而不是>追加到文件而不是覆蓋它。

python log_capture.py >> log.txt

1

使用>>,由evsheino建議,是附加到文件正確。如果每個循環都需要單獨的日誌文件,請創建一個計數器變量並將其用於日誌文件名稱中。

SET /A COUNTER=0 
:DoOver 
python -c "print 'hello, world'" >"python_logfile_%COUNTER%.txt" 
SET /A COUNTER+=1 
GOTO DoOver 

注:我不會使用像start這樣的程序名稱作爲標籤。這可能沒有問題,但誰知道?