Как с помощью SED запретить запись если значение существует?

Есть файл 1.conf c содержимым:
/opt/pki/ca.crt
/opt/pki/ca.key
Нужно добавить после ".crt" например "Ivanov"
Тут все понятно:
#!/bin/bash
filename="/opt/pki/1.conf"
search=".crt"
replace="Ivanov"

if [[ $search != "" && $replace != "" ]]; then
sed -i "s/$search/& $replace/" $filename
fi
Как быть если в файле /opt/pki/1.conf уже содержится:
/opt/pki/ca.crt Ivanov
/opt/pki/ca.key
При повторном запуске добавляет "/opt/pki/ca.crt Ivanov Ivanov" :(
  • Вопрос задан
  • 34 просмотра
Решения вопроса 1
paran0id
@paran0id
Умный, но ленивый
Искать не '.crt', а '.crt$' - с концом строки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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