В Vim, как я могу удалить все строки в файле, кроме последних 100 строк?

Переменные среды должны быть строками, поэтому используйте

os.environ["DEBUSSY"] = "1"

, чтобы установить переменную DEBUSSY в строку 1. Чтобы позже получить доступ к этой переменной, просто используйте

print os.environ["DEBUSSY"]

. Процессы дочернего процесса автоматически наследуют среду родительского процесса - никаких специальных действий с вашей стороны не требуется.

20
задан Sinan Ünür 12 August 2009 в 11:18
поделиться

3 ответа

В нормальном режиме:

G100kdgg

Другими словами:

G     -> go to last line
100k  -> go up 100 lines
dgg   -> delete to top of file
53
ответ дан 29 November 2019 в 22:25
поделиться

Альтернативное решение общего назначения:

:%!tail -100

Вы можете использовать любую команду оболочки после ! для произвольного изменения текущего буфера. Vim запускает команду и передает текущий файл на stdin и считывает новый буфер из stdout .

11
ответ дан 29 November 2019 в 22:25
поделиться

В режиме ex:

:1,$-100d

Пояснение: «:» переводит редактор в «режим ex». Команда d режима ex удаляет строки, указанные как одиночный номер строки или диапазон строк. $ - последняя строка, и к номерам строк можно применять арифметические операции.

49
ответ дан 29 November 2019 в 22:25
поделиться
Другие вопросы по тегам:

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