私の意図は、各テストで重複したパラメータを削除することです。重複パラメータがある可能性があるいくつかのテストがあり、各テストから2番目のパラメータ重複を削除したいと思います。私のファイルは次のとおりです。
Test 1
{
Param1 = "1";
Param2 = "A";
Param1 = "-1";
}
Test 2
{
Param1 = "-1";
Param3 = "B";
}
予想出力:
Test 1
{
Param1 = "1";
Param2 = "A";
}
Test 2
{
Param1 = "-1";
Param3 = "B";
}
ベストアンサー1
努力するawk
:
awk '$0=="{" {delete params} { if ($1 in params) next; params[$1]=1 }1' file
これは配列$1
に保存され、配列に存在する場合はスキップされます。実行されるたびに配列が削除されます。params
$1
{