VI 替换自定义位置中的自定义字符数



有一个这样的文本文件

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
mail:x:8:12:mail:/var/spool/mail:/bin/false
ftp:x:14:11:ftp:/srv/ftp:/bin/false
http:x:33:33:http:/srv/http:/bin/false

如何在VI中将字符串2-4中从第2到5的所有字符替换为"X"?

上级:它像::2,4s//X/g我想我需要一个正则表达式

UPD2: :2,4s/^(.)...|^$/1XXX/ | 2,4s/^$/ XXX/

仅限 Vim

试试这个命令:

:2,4s/%2c.../XXX/

哪里:

  • 2,4适合in strings 2-4
  • %2c...是为from 2nd to 5th
  • XXX是为to 'X'

Vim和Vi

由于 Vi 没有 \%c,因此应改用以下命令:

:2,4s/^(.).../1XXX/

资源

  • :help :range
  • :help /ordinary-atom

相关内容

  • 没有找到相关文章

最新更新