問候!無法刪除回車
我的任務是創建關於我們從硬件供應商處收到的文件的報告。我需要grep這些文件的兩個字段'Test_Version'和'Model-Manufacturer';對於每個領域,我需要捕捉他們相應的值。
在previous post,我發現幫助像這樣創建一個基本報告:
find . -name "*.VER" -exec egrep -A 1 'Test_Version=|Model-Manufacturer:' {} ';'
Model-Manufacturer:^M
R22-100^M
Test_Version=2.6.3^M
Model-Manufacturer:^M
R16-300^M
Test_Version=2.6.3^M
然而,這輸出充斥着DOS回車數據「^ M」。我的老闆要「模型製造商」,以顯示像「Test_Version」,即
Model-Manufacturer:R22-100
Test_Version=2.6.3
Model-Manufacturer:R16-300
Test_Version=2.6.3
使用SED,我試圖以刪除「模型製造商」,但無濟於事了「^ M」字:
find . -name "*.VER" -exec egrep -A 1 'Test_Version=|Model-Manufacturer:' {} ';' | sed 's/Model-Manufacturer:^M//g'
該命令沒有效果。我在這裏錯過了什麼?
使用`tr`,我成功地從命令行找到了`find。 -name「* .VER」-exec egrep -A 1'Test_Version = | Model-Manufacturer:'{}';' > tmp1; tr -d'^ M' tmp2`。但是,在bash腳本中的相同命令不會做任何事情!我想我瘋了!幫幫我! –
Chris
2011-02-18 19:37:33