1

次のjsonキーと値のペアを置き換えようとしていますが、

"$$RESULT_REPORTER$$":"HTML", to 
"$$RESULT_REPORTER$$":"XML"

シードを使用。

これが私が使用しているsedコマンドです。

sed -i 's/^\(\"\$\$RESULT_REPORTER\$\$\"*:*\).*$/\1\"XML\"/' /path/to/file

しかし、これに関する問題は、最後にコンマを保持できず、json 解析エラーが発生することです。文字列を置換した後、コンマを保持するにはどうすればよいですか?

4

1 に答える 1

3

コンマを置換に追加するだけです:

$ sed -i 's/^\(\"\$\$RESULT_REPORTER\$\$\"*:*\).*$/\1\"XML\",/' file
###                                                 HERE ---^

編集

$ cat file
"$$RESULT_REPORTER$$":"HTML",
"$$RESULT_REPORTER$$":"HTML"

$ sed 's/^\("$\$RESULT_REPORTER\$\$":"\)[^"]*/\1XML/' file
"$$RESULT_REPORTER$$":"XML",
"$$RESULT_REPORTER$$":"XML"
于 2013-03-07T13:19:31.280 に答える