Удаление записи из файла hosts в Solaris с помощью сценария или команды напрямую - PullRequest
1 голос
/ 07 ноября 2019

У меня есть требование, где я хочу удалить запись из файла / etc / hosts, соответствующую определенной записи

Например

Я хочу удалить запись, как показано ниже

192.168.1.1 test001 test001.test.test.com

Как я могу сделать это, используя однострочную команду или скрипт.

Ответы [ 2 ]

0 голосов
/ 12 ноября 2019

Вы можете попробовать что-то вроде:

grep -v "192.168.1.1 test001 test001.test.test.com" /etc/inet/hosts >/tmp/hosts
mv /tmp/hosts /etc/inet/hosts

Файл и путь отличаются, потому что /etc/hosts в Solaris - это мягкая ссылка на /etc/inet/hosts

0 голосов
/ 07 ноября 2019

При этом удаляется строка из вашего хост-файла

sed -i -e "/192.168.1.1 test001 test001.test.test.com/d" filename

Возможно, вам понадобятся регулярные выражения, чтобы найти пробел между словами, которые могут быть пробелами или табуляцией:

sed -i -e "/192.168.1.1.*test001.*test001.test.test.com/d" filename
...