Отредактируйте Энное происшествие в интерактивном режиме в поиске в энергии

Это не проблема с разрешением адресов IPv6. То определение имен хорошо работает, потому что завихрение сообщает, что не может достигнуть сети 2800:3f0:4001:806:: 1005; это показывает, что перевод имени действительно успешно выполнялся. Это отличается, чем ошибка в поиске имени:

 $ curl -6 http://does.not.exist.foo.
 curl: (6) Couldn't resolve host 'does.not.exist.foo.'

Для достижения адреса IPv6 у Вас должен быть маршрут к адресу назначения, и очень немного соединений имеют любую возможность соединения IPv6 вообще. На машине я пишу это, у меня есть почти маршруты № v6 вообще:

$ route -A inet6
Kernel IPv6 routing table
Destination                    Next Hop                   Flag Met Ref Use If
fe80::/64                      ::                         U    256 0     0 wlan0
ff00::/8                       ::                         U    256 0     0 wlan0

который говорит Вас, которых я знаю, как достигнуть моей локальной сети и ничего больше. Контрастируйте это с моими маршрутами IPv4

$ route -n 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0
…

который показывает, что у меня есть один очень критический бит маршрутной информации. Я знаю, как добраться до где угодно, что у меня нет явного маршрута к путем вручения пакета моему маршрутизатору по умолчанию в 192.168.1.1.

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

3
21.01.2015, 11:18
5 ответов

Если я правильно читаю:

  1. Поиск

    / foo Введите

  2. Next by n

  3. «О, это я хочу удалить «
    • D W
  4. Продолжить N
  5. « О, этот я хочу изменить на панель »
    • C W Бар Esc
  6. Продолжить N N ...
  7. «О, этот я хочу изменить на BAZ
    • C W BAZ Esc
  8. Продолжить N ...

Редактирование / коррекция:

Для удобства я добавил:

imap <C-d> <ESC>

на .VIMRC - забыл об этом и думал, что это отображение по умолчанию. Исправлено.

4
27.01.2020, 21:10

Следующий скрипт использовал промежуточную замену в = символ (вы можете перейти на любое, что вы хотите):

#!/bin/sed -f
s/\s\+\s/=/g
/:[^=:]\+:/s/:[^=:]\+ /&=/g
s/^=/\t/
s/ *=$//
s/ *=/\n\t/g

Итак

ifconfig eth0 | sed -f script.above

Выходы:

eth0
    Link encap:Ethernet
    HWaddr 74:2f:68:8b:b8:6e
    inet addr:192.168.1.247
    Bcast:192.168.1.255
    Mask:255.255.255.224
    inet6 addr: fe80::762f:68ff:fe8b:b86e/64
    Scope:Link
    UP BROADCAST RUNNING MULTICAST
    MTU:1500
    Metric:1
    RX packets:3128543
    errors:0
    dropped:1
    overruns:0
    frame:0
    TX packets:1346967
    errors:0
    dropped:0
    overruns:0
    carrier:0
    collisions:0
    txqueuelen:1000
    RX bytes:4538616348 (4.5 GB)
    TX bytes:118149772 (118.1 MB)
-121--145973-

Вы можете повторить много команд в Vim , набрав первый номер, как часто их следует повторять. Это также работает для команды N .

Чтобы изменить Е.Г. 9-го появления FOO Тип

  1. Тип / foo Введите , чтобы перейти к первому расположению foo
  2. Тип 8n прыгать восемь раз на следующее место. Тогда вы находитесь на девятом вхождении
  3. типа CW , чтобы изменить слово и введите новое слово.

Вы можете продолжить шаги 2. и 3. Как описано в Этот ответ

0
27.01.2020, 21:10

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

:g/qualifyingregexp/s/foo/bar/igc

, чтобы дополнительно ограничить Даже указать маркеры

:'a,'bg/qualifyingregexp/s/foo/bar/igc
0
27.01.2020, 21:10

Для обычного поиска и замены опции в vim можно использовать опцию подтверждения, например, передав gc.

Например, если необходимо заменить слово foo на bar, то добавляется строка

:%s/foo/bar/gc

Таким образом, везде, где встречается слово foo, запрашивается подтверждение замены слова bar. Если нажать y, то оно будет заменено и n нет.

1
27.01.2020, 21:10

Флаг c можно использовать при выполнении поиска и замене :

:%s/foo/bar/gc

Каждый раз, когда vim находит foo, будет запрашивать да/нет для подтверждения замены или отказа от замены.

Или, если вы хотите найти N-е событие foo, вы можете:

n/foo

Тогда vim перепрыгнет на N-е событие foo, так что вы можете принять решение о замене или отказе.

5
27.01.2020, 21:10

Теги

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