我想比較兩個文本文件的特定行,並在文件不相同的情況下更新其中一個文件。如何將一行文本文件與一行不同的文本文件進行比較,如果它們不相同,則追加第一行
-4
A
回答
0
正在更新從技術上講,文本文件中的行是不可能的(除非替換行的長度完全相同)。您必須創建一個新文件,最後您可以移動到舊文件。
從你的標籤,我假設你正在尋找一個shell解決方案,這可能不是一個好主意。這可能更方便,例如,Perl,Ruby或Python。
一種可能性是使用命令head
和tail
,它們允許您將文件分解爲多個部分。你可以將你的文件分成三部分:所涉及的行之前的部分,行本身,以及後面的行。
另一種可能性是使用循環和殼的read
命令來處理由線路文件線,像這樣:
while read line
do
... # Decide here, whether to write $line or the replacement line
done <your_file
+0
嗨,感謝您的快速回復!如果它們的長度相同,如何替換該行 –
+0
如果您使用zsh作爲shell,請查看* zshall *手冊頁中的命令'sysopen','sysread'' sysseek'和'syswrite'。但是,在這種情況下,** real **編程語言將更易於使用。 – user1934428
相關問題
- 1. 將輸入與文本文件的某一行進行比較
- 2. 如何將文本文件的行與變量進行比較
- 3. bash腳本將文本追加到文件的第一行
- 4. TF同時對一整套文件進行比較,而不是一次對一個文件進行比較
- 5. 將一個字符串與文本文件中的一行進行比較並根據該文本行爲
- 6. Shell腳本將結果與文本文件進行比較?
- 7. 將一行文本傳送到同一文本文件中的另一行
- 8. 如何將一行文本追加到SQLCMD中的文件
- 9. 將某行文本文件與輸入進行比較
- 10. 將一行與一個文件進行比較
- 11. 如何把不同的文本文件連同等於第一行 - C#
- 12. 用C#中相同文本文件的另一行代替行
- 13. 將本地文本文件與服務器文本文件進行比較
- 14. 如何比較文本文件的每一行? java的
- 15. 如何將文件的每一行加載到不同的文本框
- 16. 如何比較兩個文本文件與PHP中的不同行尾?
- 17. 將本地文件與下載的文件進行比較
- 18. Python:如何檢查文本文件,將其與另一個文本文件中的每行進行比較,並打印出不匹配的行
- 19. 運行相同二進制文件的不同版本,相同的文件
- 20. AWK - 比較兩個文件 - 如果Field1相同,比較行
- 21. 如何更新VB.NET文本文件中的第一行文本
- 22. MATLAB:如何讀取文本文件的每一行第N行?
- 23. POSTGRES - 將同一列與不同文本組合在一行中
- 24. 將check_output()的輸出與文件中的文本進行比較
- 25. 如何將文本追加到RichEdit控件的最後一行?
- 26. 如果行不存在,則將文本文件中的行添加到新的文本文件中
- 27. 如果用戶名在文本文件中相同,則替換文本行?
- 28. 將文本文件的大小與值進行比較
- 29. 將特定值與文本文件中的值進行比較
- 30. 將raw_input與文件中的文本進行比較
「附加」?或「更新」?這些文件是什麼樣子的?你有什麼嘗試? –
有關如何更好地提出問題的信息,請參閱此信息http://stackoverflow.com/help/mcve –
我想將一個vfstab文件的根設備詳細信息(特別是不是整個文件)與其他設備進行比較,然後更新如果細節不一樣 –