Vim批量插入数字序列

Vim批量插入数字序列,第1张

有如下文本,现在对该文本添加行号

也就是最终达到如下效果:

这里要实现的就是在Vim中批量填入序列。

这种自增 *** 作肯定是要用到变量累加,这十分容易: let i=i+1 即可。接下来的难点是如何将变量的值插入到Vim中,这里有两种方法:

具体 *** 作的整个流程肯定是通过Vim的宏来串联起来的,下面逐一介绍。

首先执行 :let i=1 ,给Vim变量i赋初值1。然后,就可以开始录制宏( qn )了。这个宏包含如下步骤:

录制完宏之后,可以通过 @n 来执行该宏,也可以在前面加执行次数,如 5@n 来连续执行该宏。

通过 "np ,可以查看该宏的完整内容:

寄存器的方法类似,只有插入行号变量的部分不同。

首先执行 :let i=1 ,给Vim变量i赋初值1。然后,就可以开始录制宏( qn )了。这个宏包含如下步骤:

录制完宏之后,可以通过 @n 来执行该宏,也可以在前面加执行次数,如 5@n 来连续执行该宏。

通过 "np ,可以查看该宏的完整内容:

希望对大家有帮助。

方法如下:

1. 先用vi编辑一个文本用户文件

- 每一列按照/etc/passwd密码文件的格式书写,要注意每个用户的用户名、UID、宿主目录都不可以相同,其中密码栏可以留做空白或输入x号。一个范例文件user.txt内容如下:

user001::600:100:user:/home/user001:/bin/bash

user002::601:100:user:/home/user002:/bin/bash

user003::602:100:user:/home/user003:/bin/bash

user004::603:100:user:/home/user004:/bin/bash

user005::604:100:user:/home/user005:/bin/bash

user006::605:100:user:/home/user006:/bin/bash

2. 以root身份执行命令 /usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户:

# newusers <user.txt

3. 执行命令 /user/sbin/pwunconv 将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd 中,并将/etc/shadow的shadow密码栏删掉。这是为了方便下一步的密码转换工作,即先取消 shadow password 功能

pwunconv

4. 编辑每个用户的密码对照文件,范例文件passwd.txt内容如下:

user001:密码

user002:密码

user003:密码

user004:密码

user005:密码

user006:密码

5. 以root身份执行命令 /usr/sbin/chpasswd

创建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏

chpasswd <passwd.txt

6. 确定密码经编码写入/etc/passwd的密码栏后

执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入 /etc/shadow

pwconv

7.这样就完成了批量用户的创建。

方法一

ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I(shift+i),再插入注释符,比如"//",再按Esc,就会全部注释了

批量去掉注释

ctrl+v,进入列编辑模式,横向选中列的个数(如"//"注释符号,需要选中两列),然后按d, 就会删除注释符号

方法二

使用下面命令在指定的行首添加注释:

:起始行号,结束行号s/^/注释符/g

取消注释:

:起始行号,结束行号s/^注释符//g

例子:

在10 - 20行添加 // 注释

:10,50s#^#//#g

在10 - 20行删除 // 注释

:10,20s#^//##g


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/7910590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存