ソースコードがありますが、いくつかの特定の行を新しい書式とテキストに置き換えたいと思います。
ファイルには次の行が含まれています。
LogIfYouCan(!is_it_ready, "Log Text, some variable: " << variable1 << " variable2: " << variable2);
入れ替えたいです。
if(!is_it_ready) {
LogOutput("Log Text, some variable: " << variable1 << " variable2: " << variable2);
}
つまり、 で始まる行は行末までテキストLogIfYouCan
に変更され、カンマまでのテキストは中括弧とともに追加されます。LogOutput
どうすればいいですか?そして、?,
(
,
if
sed
awk
ベストアンサー1
使用sed
$ sed -E 's/[^!]*([^,]*),[^"]*(.*)/if(\1) {\n LogOutput(\2\n}/' input_file
if(!is_it_ready) {
LogOutput("Log Text, some variable: " << variable1 << " variable2: " << variable2);
}