Задать вопрос
@daniks
Ничего особенного

Как удалить строки содержащие слова через bash?

Доброго времени суток!
Подскажите пожалуйста как удалить строку содержащую определенное имя, оно с точкой, через данный скрипт, он выполняется без ошибок, но строка не удаляется, а если выполнить напрямую из консоли командой sed -i 'domain.ru/d' /etc/pool/conf.py, то строка удаляется, необходимо удалить строки именно через bash скрипт

#!/bin/bash
echo "Enter domain":
read domain
sed -i '$domain/d' /etc/pool/conf.py
  • Вопрос задан
  • 3500 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
vasilyevmn
@vasilyevmn
DevOps
$ cat test.sh 
#!/bin/bash
echo "Enter domain":
read domain
sed -i "/$domain/d" test.txt


Результат:
cat test.txt 
aaa.com
bbb.com
ccc.com

 ./test.sh 
Enter domain:
bbb.com

cat test.txt 
aaa.com
ccc.com
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@AVKor
$ a="test";echo "$a";echo '$a'
test
$a

Небольшой тест, показывающий, в чём ошибка.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы