我想用单词替换文件中所有特定字符的出现次数。我的问题是,我是否可以使用单个命令来替换所有字符。我正在使用以下命令将每个 'a' 的出现次数替换为 'apples'
sed 's/a/apple/g' sample.txt
我不想写3或4个类似的命令来替换每个'b'、'c'、'd'的出现,有没有办法扩展上述命令以适应我的需求,还是我需要使用同样的三个命令?
我想用单词替换文件中所有特定字符的出现次数。我的问题是,我是否可以使用单个命令来替换所有字符。我正在使用以下命令将每个 'a' 的出现次数替换为 'apples'
sed 's/a/apple/g' sample.txt
我不想写3或4个类似的命令来替换每个'b'、'c'、'd'的出现,有没有办法扩展上述命令以适应我的需求,还是我需要使用同样的三个命令?
-e
选项来输入多个命令,如下所示:sed -i.bak -e 's/a/apple/g' -e 's/b/bat/g' -e 's/c/cat/g'
e
字符时要小心,因为它也会影响到apple
中的e
。你可能需要研究一下 sed 的正则表达式功能,特别是 "单词边界" 字符。 - Intermernetsed -i
。它应该允许原地修改,但有时很危险!先复制文件! - Intermernet