vim:如何删除整个文件的6个前导字符?

vim:如何删除整个文件的6个前导字符?

问题描述:

我有喜欢vim:如何删除整个文件的6个前导字符?

00001 This is line 1 
00002 This is line 2 
10001 ?? 
30004 xccddd 

一个文本文件,我想删除所有行的主要6个字符。有没有可以做到这一点的一行vim正常模式命令?

  • :%normal! 6x

%

您可以通过删除文件

normal!的所有行:在正常模式下

6x执行命令:删除6个字符

  • :%s/^.\{6}//

+1

谢谢,都工作正常,J ust好奇于什么:%正常!意思? –

只需添加一个(递归)宏解决家庭。这可难倒了:s:norm命令,在“高尔夫”的方式..^_^

[email protected]@q 

它使用了递归宏,这样我们就不必按类似[email protected]

+0

我很少看到其他人在宏中使用'+'/'',但它是我首选的去到下一行,因为它把光标移动到第一个非黑色字符的方法。干杯! –

+0

我也是'+/-'迷,特别是在宏观上。 @PeterRincker – Kent

除了其他的答案,你也可以使用可视块模式。

  • 移动光标到第一行,第一个字符:gg^
  • 调用可视块模式:Ctrl+v
  • 选择块删除:G6lG下井文件的末尾,然后向右移动l六次)
  • 删除块:x