Bash: найти слово в файле и добавить текст после него - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь создать свой собственный bash скрипт для установки LEMP (nginx mariadb php). Мне удалось это осуществить, но я застрял в той части, где мне нужно добавить текст «index. php» в строку индекса @ /etc/nginx/sites-avaliable/default.

Я пробовал с "sed" и подошел очень близко, но пока не там.

sed '/\index.htm/i index.php' input /etc/nginx/sites-available/default

, который был самым близким, который я получил

Я также попытался заменить файл index.htm следующим образом :

sed 's/index.htm/index.php' /etc/nginx/sites-available/default

Спасибо за помощь! :)

1 Ответ

0 голосов
/ 11 февраля 2020

Если вы хотите заменить во входном файле, вы должны использовать опцию -i. В противном случае sed отправляет вывод на стандартный вывод.

Для команды s требуется завершающий разделитель.

sed -i 's/index.html/index.html index.php/' /etc/nginx/sites-available/default
...