2014-09-24 41 views
0

我的文本文件,UNIX命令,刪除文本文件中的空格用分隔符

輸入文件:

sno|name|lab|result|dep 

1|aaa|ALB|<= 3.67|CHE 

2|bbb|WBC|> 7.2|FVC 

3|ccc|RBC|> 14|CHE 

輸出文件:

sno|name|lab|result|dep 

1|aaa|ALB|<=3.67|CHE 

2|bbb|WBC|>7.2|FVC 

3|ccc|RBC|>14|CHE 

如何刪除列空格4(結果)?

回答

1

如果你可以從一切刪除空格,只要使用sed

sed 's/ //g' input.txt > output.txt 

甚至tr(翻譯):

tr -d ' ' <input.txt> output.txt 

否則,如果你需要編輯只是第四列,使用awk。以下命令將|視爲字段分隔符(-F \|),然後使用|作爲輸出字段分隔符(-vOFS=\|)輸出文件。

awk -F \| -vOFS=\| '{gsub(/ /, "", $4); print; }' input.txt > output.txt 
+0

執行的第三次聲明中列第4去除空格,但只要空間是存在的,然後分隔符不顯示 – vsraju 2014-09-24 17:19:57

+0

@vsraju固定的,默認的輸出字段分隔符是空格。您可以使用'OFS'變量控制輸出字段分隔符。 – Lekensteyn 2014-09-24 20:33:44

+0

非常感謝你@Lekensteyn – vsraju 2014-09-25 09:19:27

相關問題