2016-12-07 90 views
1

我有一個file.csv與空間分隔符;刪除列中的重複文本

name1 A 
name1 B 
name1 C 
name2 A 
name2 B 
name2 C 

我desidered輸出爲:

name1 A 
     B 
     C 
name2 A 
     B 
     C 

我已經使用的排序-uË獨特-u命令,但不起作用。 也許這不是正確的命令?

+0

CSV文件可以包含在細胞中的新行:'C1 C2 「c3_line1 \ nc3_line2」'。如果文件中的單元格可能有換行符,那麼您需要一個CSV解析器,而諸如awk,sed和sort之類的shell命令並不合適。 –

回答

6

使用AWK

awk '{if(x!=$1)x=$1;else gsub(/./," ",$1)}1' file 

name1 A 
     B 
     C 
name2 A 
     B 
     C 
+0

它的作品,但不明白「gsub」? 謝謝 – pasaico

+0

它用一個空格替換第一個字段中的每個字符,確保保留正確的縮進 – 123

+0

好的謝謝... – pasaico