Удаление символа из начала строки в скрипте оболочки? - PullRequest
0 голосов
/ 06 мая 2019

Я пишу сценарий оболочки для автоматической настройки конфигурации и каталогов для веб-сайта Apache. Я столкнулся с проблемой, когда моя команда sed не удаляет значение по умолчанию # с начала строки ServerName. Может ли кто-нибудь помочь мне изменить команду, чтобы она работала так, как мне нужно?

Спасибо.

sudo sed -Ei "s|^([[:blank:]]*#ServerName).*$|\1 ${1.io|;
         s|^([[:blank:]]*DocumentRoot).*$|\1 \"/var/www/${1}/public\"|;
        " "/tmp/${1}.io.conf"

1 Ответ

1 голос
/ 06 мая 2019

Почему команда должна удалять хеш?Это часть вашей группы захвата.

Если вы хотите удалить ее, разделите группу захвата на две части : одну перед хешем и одну после нее.

^([[:blank:]]*)#?(ServerName).*$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...