如何取消注释行中的空白?

如何取消注释行中的空白?

假设我有一个包含以下内容的文件:

#plugin = eosio::producer_plugin
#plugin = eosio::producer_api_plugin

如果我尝试使用 sed 取消注释值,它将失败:

sed -E '/plugin.*(producer_plugin)/s/^#//g' file.ini

需要注意的是,#前面有一个空格。

答案1

如果您需要跳过行开头的空格字符,您可以执行以下操作:

/^ *A/

脱字符号、空格、星号、第一个重要字符。这意味着“在行的开头,有零个或多个空格,后跟字母 A”。

在你的例子中

sed -E '/plugin.*(producer_plugin)/s/^ *#//g' file.ini

请阅读此处了解特殊字符的说明: https://en.wikipedia.org/wiki/Regular_expression#POSIX_basic_and_extended

相关内容