Это не ошибка, это сделано намеренно, поскольку sed
- это S tream ED итор, а не редактор файлов. По сути, он делает копию и заменяет исходный файл копией. BashFAQ
В качестве альтернативы вы можете использовать команду ex
, которая имеет аналогичный синтаксис для подстановки, например
ex +%s/cat/dog/ge -scwq pet_link
или несколько файлов:
ex "+bufdo! %s/cat/dog/ge" -scxa **/pet_link*
Это не уничтожит символические ссылки.
Да, это говорит о том, что у вас нет подключения по IPv6.
Если вы хотите получить IPv6-адрес для Google , а не использовать IPv6 для получения адреса для Google, вы хотите, чтобы
dig -t aaaa google.com
Используйте
ifconfig | grep inet6
, чтобы узнать, есть ли у вас какие-либо глобальные IPv6-адреса (которые есть, а не :: 1
и не какой-либо локальный адрес ссылки, начинающийся fe80 ::
).
-4
/ -6
указывает dig использовать только подключение IPv4 / IPv6 для передачи вашего запроса на сервер имен - это не меняет, следует ли запрашивать записи A
(IPv4) или записи AAAA
(IPv6), если это то, что вы намеревались. Если dig -4
работает, а dig -6
- нет, это просто означает, что ваш локальный сервер имен недоступен через IPv6, что может иметь различные причины. Конечно, среди них нет возможности подключения по протоколу IPv6, но, к сожалению, некоторые домашние маршрутизаторы также часто не действуют в качестве сервера пересылки DNS на IPv6. В этом нет необходимости, поскольку ваш компьютер может использовать IPv4 для запроса записей AAAA
.
Если вы хотите быстро проверить, можете ли вы выйти на google.com через IPv6, вы можете сделать
ping6 google.com