我正在编写一个 shell 脚本来自动设置 apache 网站的配置和目录。我遇到了一个问题,我的 sed
命令不会删除默认 #
从 ServerName 行的开头。谁能帮我更改命令以按照我需要的方式工作?
谢谢。
sudo sed -Ei "s|^([[:blank:]]*#ServerName).*$|\1 ${1.io|;
s|^([[:blank:]]*DocumentRoot).*$|\1 \"/var/www/${1}/public\"|;
" "/tmp/${1}.io.conf"
最佳答案
为什么该命令要删除哈希?它是您的捕获组的一部分。
如果你想删除它,split the capturing group in two parts : 一个在哈希之前,一个在它之后。
^([[:blank:]]*)#?(ServerName).*$
关于bash - 从shell脚本中的行首删除字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56003958/