入力テキストファイル:特定の文字列を含まないテキストを同じ行に置き換えるにはどうすればよいですか?
AAA
BBB_CCC
BBB
AAA BBB
FILE.TXT取得する必要があります:
sed "/_CCC/! s/AAA/AAA_CCC/g;/_CCC/! s/BBB/BBB_CCC/g" file.txt > file_out.txt
しかし、それは生成します:
AAA_CCC
BBB_CCC
BBB_CCC
AAA_CCC BBB_CCC
は、私は、次の正規表現でsedを呼び出す
AAA_CCC
BBB_CCC
BBB_CCC
AAA_CCC BBB
1つの解決策は、同じファイルに対してsedを2回呼び出すことですが、よりエレガントな方法が存在すると思います。それが含まれていないすべてのフィールドに_CCC
を追加します
あなたはすべてのフィールドまたはフィールドだけ 'AAA'と' BBB'に '_CCC'を追加しますか?言い換えれば、 'DDD'フィールドがある場合、または' BBB_CCC_BBB'フィールドがあればどうなりますか? – PesaThe