次の数千行があります。
{"100K";"0.00001";"10";"0.01"]}
{"101K";"0.0001";"100";"0.1"]}
{"102K";"1";"1000";"1"]}
{"102K";"1";"1000";"1"]}
{"103K";"0.01";"10000";"10"]}
{"104K";"0.1";"100000";"100"]}
{"105K";"1";"1000000";"1000"]}
{"109K";"0.000001";"1";"1"]}
{"120K";"0.000012";"12";"12"]}
;
私は行の最初の項目を次に変更したいと思います。:[
この行を次のようにしてください。
{"100K":["0.00001";"10";"0.01"]}
{"101K":["0.0001";"100";"0.1"]}
{"102K":["1";"1000";"1"]}
{"102K":["1";"1000";"1"]}
{"103K":["0.01";"10000";"10"]}
{"104K":["0.1";"100000";"100"]}
{"105K":["1";"1000000";"1000"]}
{"109K":["0.000001";"1";"1"]}
{"120K":["0.000012";"12";"12"]}
これを行うには、sedまたは他のUNIXコマンドをどのように使用しますか?
答え1
sed 's/;/:[/' file
{"100K":["0.00001";"10";"0.01"]}
{"101K":["0.0001";"100";"0.1"]}
{"102K":["1";"1000";"1"]}
{"102K":["1";"1000";"1"]}
{"103K":["0.01";"10000";"10"]}
{"104K":["0.1";"100000";"100"]}
{"105K":["1";"1000000";"1000"]}
{"109K":["0.000001";"1";"1"]}
{"120K":["0.000012";"12";"12"]}
答え2
ご質問に次のタグを付けましたので、アッ:
awk '{ sub(/;/, ":["); print; }'
答え3
次の2つのコマンドを試すこともできます。
perl -pne "s/;/:[/" filename
sed 's/;/:[/1' filename
出力:
{"100K":["0.00001";"10";"0.01"]}
{"101K":["0.0001";"100";"0.1"]}
{"102K":["1";"1000";"1"]}
{"102K":["1";"1000";"1"]}
{"103K":["0.01";"10000";"10"]}
{"104K":["0.1";"100000";"100"]}
{"105K":["1";"1000000";"1000"]}
{"109K":["0.000001";"1";"1"]}
{"120K":["0.000012";"12";"12"]}