2016-12-15 79 views
-1

我在不同的列中有數百萬的觀察結果,其中一列包含兩個因素的記錄。例如136789,我想將第一個字符(1)和其餘(36789)分隔爲所有觀察值的單獨列。如何拆分包含兩個記錄的列分開

現場看起來像這樣

#136789 

我希望看到這樣的

#1 36789 
+2

提供樣本輸入文件和預期輸出文件應用sub()。 – Inian

+0

更新問題中的示例文件以供大家參考 – Inian

+0

@此後還有更多列嗎? (和)之前有列嗎?如果它在中間,你認爲它如何被識別? – Inian

回答

1

您可以使用sub()功能。

例如:

kent$ awk 'BEGIN{x="123456";sub(/^./,"& ",x);print x}' 
1 23456 

在你的代碼,你需要一些列($x

+0

我想分割的列($ 17)是在其他列的末尾。所以我怎麼寫腳本? – Alula

+0

'awk'{sub(/^./,"&「,$ 17)} 7'文件'@Alula – Kent