Vim,删除至第 n 行

Vim,删除至第 n 行

我经常在编辑文件时需要删除除前五行和后三行之外的所有内容。我通过移动到第六行并输入“:,.$-3 d”来实现这一点。有没有办法使用 d 和某种动作来实现同样的效果?

答案1

当然可以! d[num]G其中[num]是目标行号。G当然,除了 之外,任何其他移动命令也可以起作用。

要删除前五行和后三行,假设您刚刚打开该文件并且位于第一行,则应这样做:

d5G   # delete from current position to line 5
G     # jump to last line
d2k   # delete from current position to 2 lines up (3 lines total)

编辑: 重新阅读问题,发现我完全搞错了你的意图 - 你想保留前五个/最后三个,而不是删除它们。在这种情况下,它是:

G     # jump to last line
3k    # up 3 lines
d6G   # delete from current position to line 6

相关内容