私はこのコマンドを持っています
ここに
vovar = OBJECTS prvar = "$(awk '/'" $ vovar "'/、/}/{gsub(" $ vovar "、" "); gsub("} "、 ":%s、"); gsub( "{"、 ""); gsub( "、"、 ":%s、"); print} 'temp1) "
Temp1の内容
ciscoFlashCopyCompletionTrap NOTIFICATION-TYPE オブジェクト { ciscoFlashCopyStatus } STATUS current 説明 "操作の開始時にそのようなトラップ が要求された場合、フラッシュコピー操作の 完了時にciscoFlashCopyCompletionTrapが送信されます。 " :: = {ciscoFlashMIBTraps 1}
コマンドに実行させたいこと
ciscoFlashCopyStatus :%s:%s、
それが実際に行うこと
オブジェクト ciscoFlashCopyStatus :%s:%s、
必要なものを取得できるようにawkコマンドを変更するにはどうすればよいですか?
vovar
を単一引用符の外側で初めて使用しましたが、2回目ではありませんでした。
... awk '/'"$vovar"'/,/}/ {gsub("$vovar"," ") ...
一貫していた場合:
$ awk '/'"$vovar"'/,/}/ {gsub("'"$vovar"'"," "); gsub("}",": %s,"); gsub("{"," ");gsub(",",": %s,");print}' foo
ciscoFlashCopyStatus
: %s: %s,