@historydev

Как исправить ошибку sed?

Цель скрипта linux, но сейчас запускаю с windows git bash.

location="
    location /projects/test/v2.0.1-4 {
        proxy_pass http://0.0.0.0:2222;
    }
"

sed -i "/modsecurity/i $location" MYFILE


Ошибка:
sed: -e expression #1, char 22: extra characters after command
  • Вопрос задан
  • 51 просмотр
Решения вопроса 1
@xibir
каждая вставляемая строка должна оканчиваться слэшом

#!/bin/bash
location='
    location /projects/test/v2.0.1-4 {
        proxy_pass http://0.0.0.0:2222;
    }'

sed -i "
/modsecurity/i ${location//$'\n'/\\$'\n'}
" MYFILE
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы