我有一个配置文件,我想基本上编辑未注释的行,但不是注释的行.我正在使用sed.
例如,我有一个名为file.txt的文件:
test # test # test test
我想用“TEST”替换“test”,但不要触摸已注释的行.最终输出应显示:
TEST # test # test TEST
sed '/^#/!s/test/TEST/g' /path/to/infile
产量
$sed '/^#/!s/test/TEST/g' infile TEST # test # test TEST
*注意:如果您对评论的唯一要求是第一个非空格字符是#,那么您可以使用:
sed '/^[[:space:]]*#/!s/test/TEST/g' /path/to/infile
产量
$sed '/^[[:space:]]*#/!s/test/TEST/g' infile TEST # test # test TEST