次の内容を含むデモ.txtというファイルがあります。
value -= [
"02|05|06|abc",
]
/* Some other content other than value variable */
value -= [
]
value -= [
"0698|06|07|abc",
]
このデモ.txtファイルには多くの値変数があります。
Demo.txtファイルを読んだ後、以下のように一意の値だけを印刷したいと思います。
02| 05| 06| 0698| 07| abc
私は以下を試しました:
awk '$0 == "value -= [" {i=1;next};i && i++ <= 1'
これは私に与える
"02|05|06|abc",
]
"0698|06|07|abc",
しかし、私は「]」を望んでおらず、重複した内容も望んでいません。この場合、「06」と「abc」
誰でもアドバイスできますか?
ベストアンサー1
$ grep -oE '".*"' demo.txt | grep -oE '\w+' | sort -u
02
05
06
0698
07
abc
-o
一致する行のうち、一致する(空でない)部分のみを印刷します。各部分は別々の出力行に印刷されます。-E
PATTERNを拡張正規表現として解釈".*"
引用符内のすべての値を取得します。\w+
1つ以上の英数字/下線文字sort -u
独自の価値を得る