2012-05-08 145 views
0
ping google.com >> ping.txt 

,如果我把它放在一個批處理文件並運行該文件批次:如何將一個命令的輸出重定向到一個文件

dosent工作,這是ping.txt的輸出:

C:\Users\User\Desktop>ping google.com 1>>ping.txt 
C:\Users\User\Desktop>ping google.com 1>>ping.txt 
. 
. 
. 
+0

那是所有在批處理代碼?只是一個'平'命令?我想知道是否有其他問題導致問題。我知道如果我只用ping命令進行批處理,它就可以工作。 – iesou

+0

我正在同時處理其他批處理文件,可能是導致問題的原因?它可能有 – Alex

+0

。確保包含在所有批處理文件中的一件事是頂部的setlocal和底部的endlocal。這將消除您在批處理中設置的任何變量,因此如果它們具有相同的名稱,則它們不會流入任何其他進程。我不確定這是你的問題,但它不會傷害。 – iesou

回答

1

你正在做一些奇怪的管道。

這(從命令行)將追加ping結果到ping.txt文件。

ping www.google.com >> ping.txt 

現在創建一個批處理文件(testping.bat,例如),並把同一行裏面。 如果使用以下命令運行批處理文件,則會得到相同的結果。

testping 

如果您重定向批處理本身的輸出,那麼您將得到的是批處理文件命令的回顯!這就是爲什麼這將按預期方式工作:

testping >> ping.txt 
+0

我創建了一個批處理文件testping.bat並執行了你所說的,但是它的執行命令來自ping.bat!如果我將ping.bat重命名爲解決任何問題。和我重新啓動電腦,仍然是相同的 – Alex

+0

你把你的批處理文件命名爲另一個程序(ping.exe)?請記住,執行順序由PATHEXT環境變量確定。 –

+0

我明白現在有什麼問題,謝謝 – Alex

相關問題