2009-12-21 59 views
1

如果我有兩個來源的輸出,我想放在一起,我該怎麼做?在DOS中的文件的同一行上獲取輸出?

在我的情況下,我有一個文件和一個程序。該文件是這樣的:

listOfThings= 

我的程序在一行輸出一個字符串列表。我想要一個每晚運行的小腳本將這兩樣東西放在一起。我無法弄清楚如何做到這一點的權利,雖然

例如批處理文件

type header.txt > outputfile.txt 
myProgram >> outputfile.txt 

導致此:

listOfThings= 
foo bar baz etc 

我真正需要的輸出文件有列表緊跟=,但我不知道如何用>>操作符來完成它。 (並且在任何人暗示它之前,我不能做類似於在listOfThings =行的末尾放置\的東西,這對我正在嘗試做的事不起作用)

回答

1

您需要確保header.txt的內容中沒有回車換行對。用十六進制編輯器來查看它,並確保其中沒有0x0d0a。

+0

我剛剛加倍檢查,最後的字符面積確實是0x0d0a,並且沒有換行符或任何東西。我懷疑這種類型在最後添加了換行符。 :( – Alex 2009-12-21 23:20:48

+0

0x0d0a是換行符,也許我並不太在意,但是如果你從header.txt中刪除它們,那麼它們不會在outputfile.txt中結束。在我發佈答案之前,我創建了一個文本文件沒有換行符,然後做了一個「type myfile.txt> newfile.txt」,並且沒有添加換行符,但是我使用的是4DOS,也許它的行爲不同,我會檢查。 – 2009-12-22 00:11:13

+0

我剛剛嘗試過DOS提示啓動了cmd.exe,如果原始文件沒有任何文件,不會得到任何換行序列。 – 2009-12-22 00:12:53

0

您是否確定該標題.txt根本沒有任何行分隔符? (即,=是文件的最後一個字節)。

另外,如果type是自己附加一個換行符,請嘗試將header.txt複製到outputfile.txt。

+0

問題是,當我每晚運行腳本時,它只會每次附加程序輸出,每次越來越長。 – Alex 2009-12-21 23:06:31

相關問題