2011-06-01 168 views
2

我有一個包含一些像這樣的文件追加文件:在過去的前追加0x使用sed命令

0x0a ,0x63 ,0x31 ,0x38 ,30 
0x6b ,0x5f ,0x6c ,0x69 ,6d 
0x0a ,0x63 ,0x31 ,0x38 ,30 
0x6b ,0x5f ,0x6c ,0x69 ,6d 
0x69 ,0x74 ,0a 

我想要做的是使用sed(或不同的命令)每行的十六進制數以及每行結尾的逗號,。也就是說,上面的代碼片段,我想的是:

0x0a ,0x63 ,0x31 ,0x38 ,0x30, 
0x6b ,0x5f ,0x6c ,0x69 ,0x6d, 
0x0a ,0x63 ,0x31 ,0x38 ,0x30, 
0x6b ,0x5f ,0x6c ,0x69 ,0x6d, 
0x69 ,0x74 ,0x0a, 

我想,直到檢測到一個空行更換,從文件的開頭開始。

在此先感謝您的幫助。

+0

@Anders Abel:你說得對,我會盡力改善這一點。 – limp 2011-06-01 13:38:55

回答

1
cat somefile | sed 's/,\([0-9a-f]*\)$/,0x\1,/' 
+0

太棒了!非常感謝! – limp 2011-06-01 13:38:15