2014-02-19 47 views
0

如何使用unix創建每個字段爲列的csv文件?使用unix將行中的數據拆分爲一行

我的數據是:

>A::LOLLLL rank=1 x=2 y=9 length=10 


Column 1 Column 2  Column 3 
>A   LOLLLL  10 

我試着用awk '{print $1}'input_file嘗試的領域,但該終端讀取出command not found之間分開。我想用它來讓我感興趣的每個字段都變成一個單獨的txt.file,我可以在其中將擴展名更改爲.csv並手動合併。有沒有更簡單的方法來做到這一點?

+0

:你永遠* *想從貓管道到任何東西。只是重定向有問題的「任何事物」的輸入。 – Kevin

+0

@Kevin –

回答

0

使用awk你可以這樣做:

echo ">A::LOLLLL rank=1 x=2 y=9 length=10" | awk -F"[: =]" '{print $1,$3,$NF}' OFS="\t" 
>A  LOLLLL 10 

要到單獨的文件:

awk -F"[: =]" '{print $1 >"c1.csv";print $3 >"c2.csv";print $NF >"c3.csv"}' file 
要管從貓您的文件的awk
+0

'OFS =,'直接導出爲csv格式。 – BMW

+0

@Jotne有一個小的錯字'print $ NF>'not'print $ NF1>'對嗎? –

+0

@Awk更正,謝謝。 – Jotne