「色ではない」ではなく、重複行をすべて見つけて、2番目の項目の最後に「色付き」を追加する方法を探しています。
これがdiff -y
私が言うことです。
orginal file - final resault
pink pink
pink | pink is a color
not a color not a color
not a color not a color
violet violet
violet | violet is a color
not a color not a color
not a color not a color
orange orange
orange | orange is a color
not a color not a color
ベストアンサー1
アッ方法:
awk '{print $0; if((getline nl) > 0){ print ($0!="not a color" && $0 == nl)?
nl=$0" is a color" : nl }}' file
出力:
pink
pink is a color
not a color
not a color
violet
violet is a color
not a color
not a color
orange
orange is a color
not a color
使ってもいい行変数の取得'変数の awk 入力の次のレコードを読み込みます。変わりやすい。
これ並ぶコマンドを返す1記録を見つけた場合0ファイルの終わりに出会った場合。
$0!="not a color" && $0 == nl
- 現在のレコードがnot a color
文字列ではなく、連続した2行が同じ場合(繰り返し)
関数を使用する別の方法(substr()
キーの後に文字列を挿入すると、「色」の最初の2文字を繰り返す):" is a color "
awk '{print $0; if((getline nl) > 0){ print ($0!="not a color" && $0 == nl)?
nl=substr($0,1,2)" is a color "substr($0,3) : nl }}' file
出力は次のとおりです。
pink
pi is a color nk
not a color
not a color
violet
vi is a color olet
not a color
not a color
orange
or is a color ange
not a color