2014-10-05 2 views

ответ

2

Если вы делаете это в интерактивном режиме:

  1. : $ - 1 (для перехода на второй к последней строке)
  2. дО (удалить все от того, где находится курсор сейчас)
+0

Я пытаюсь сделать это, используя команды regex и ex. Я пробовал команду: $ - 1d, но удаляет только одну строку. – Nick

2

Gdk сделает это, а затем Ctrl-O, если вы хотите вернуться в то место, где вы были, прежде чем вы это сделали.

(Это G, чтобы перейти к концу документа, dk удалить строки между текущим местоположением и результат движения k т.е. на одну строку вверх, и Ctrl-O просто возвращает вас к предыдущей позиции.)

Если бы я действительно делал это и не успел подумать об этом, я бы, вероятно, использовал G, чтобы перейти в конец файла, Shift-V, чтобы войти в режим Visual Line, k, чтобы выбрать предыдущую строку в дополнение к текущий, затем d, чтобы удалить их оба.

+0

Это делает то, что мне нужно, но я пытаюсь сделать это только с командами ex, поскольку я пытаюсь привыкнуть к их использованию и Regex. – Nick

+1

Вы должны упомянуть об этом в вопросе. –

2

Кратчайший путь я знаю это

:$;-d 

, который говорит: "удалить строки в диапазоне $;-. Диапазон задается в обратном порядке, от последней строки $ до одной строки до последней строки - (то же, что и -1).

Смежные вопросы