1

file1次の内容のファイルがあります

{"name":"clio5", "value":"13"}
{"name":"citroen_c4", "value":"23"}
{"name":"citroen_c3", "value":"12"}
{"name":"golf4", "value":"16"}
{"name":"golf3", "value":"8"}

単語を含む行を探しclio5、見つかった行を次の文字列に置き換えたい

string='{"name":"clio5", "value":"1568688554"}'
4

3 に答える 3

2

まず、 asnameから部分を抽出します$string

NAME=`echo $string | sed 's/[^:]*:"\([^"]*\).*/\1/'`

次に、を使用し$NAMEて文字列を次のように置き換えます

sed -i "/\<$NAME\>/s/.*/$string/" file1
于 2013-07-22T14:46:11.353 に答える