2016-05-05 13 views
1

行が同じ場合はスペースまたはドットを印刷したいと思います。awkで行が同じ場合の印刷スペース

は、例を参照してください:

INPUT:

row1 xx yy zz 
row1 xx yy zz 
row1 xx yy zz 
row2 aa bb cc 
row2 aa bb cc 
row3 gg hh oo 

OUTPUT:

row1 xx yy zz 
    xx yy zz 
    xx yy zz 
row2 aa bb cc 
    aa bb cc 
row3 gg hh oo 

だけのスペースを印刷するための簡単な方法はありますか?

ありがとうございました。

答えて

6
$ awk '{c=$1} c==p{gsub(/./," ",$1)} {p=c} 1' file 
row1 xx yy zz 
    xx yy zz 
    xx yy zz 
row2 aa bb cc 
    aa bb cc 
row3 gg hh oo 
+1

thats great solution!どうもありがとうございます! – Paul

+0

エド、コマンドを教えていただけますか?また、スペースではなくタブが必要な場合は、このコマンドでどこに入りますか? – Kg123

+0

@ Kg123 pは前のものであり、cは電流のものです。それについて考えてみて、それが何をしているのか理解できると確信していますが、それについて特定の質問があれば教えてください。タブについてのあなたの質問をwrt - どこに行きたいですか? –

関連する問題