2011-12-20 45 views
1

需要一些幫助開發一個腳本來連結線在一個文本文件,即加入線路在文本文件中

Blah 
\Blah Blah\Bhal 
1 

Blah2 
\Blah Blah\Blah2 
600 

到:

Blah:\Blah Blah\Bhal:1 
Blah2:\Blah Blah\Blah2:2 

通過DOS批處理文件生成的輸出,但如果它更容易,我也可以在BASH中進行解析。

+0

我在這裏沒有看到任何圖案......冒號應放在哪裏,爲什麼? – fge 2011-12-20 23:42:23

+0

有一種模式,但你必須努力。無可否認,OP可以提供一個更好的例子。 – 2011-12-20 23:59:39

回答

2

您可以使用tr改變換行符(\n)別的東西:

tr "\\n" ":" < myfile 

這將取代每一個新的行了一:

請記住,如果您有:

foo 

bar 

其結果將是foo::bar(因爲你有兩個新行)。相應地改變。

+1

+1用於貓的無用。 – milancurcic 2011-12-20 23:44:58

+1

@ IRO-bot:這就是我滾動的方式!另外,<3您的用戶名:) – 2011-12-21 00:31:49

4

在我看來,最優雅的選擇是使用膏狀

要加入2線

paste -sd'::\n' 

要加入三線

paste -sd':::\n' 

等。