这里以/etc/passwd前十行为例
首先vi是Linux终端下或控制台下常用的编辑器,基本的操作方式为:
vi /路径/文件名
进入之后按"a"、“i”、"o"键都可以对文件进行编辑
退出vi编辑模式的方法:
按"esc"键,输入":q!"即可强制退出(注意这里的“冒号"是必须的),"q!“是强制退出(不保存当前编辑)、输入”:wq!"即可保存退出(同样这里的"冒号"也是必须的)。
或者:按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入编辑状态,这时从键盘输入的内容将插入到光标位置;再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。
快捷键操作:
首先按"esc"进入命令模式
- “yy” 复制当前光标所在行 ,“3yy” 复制当前光标所在行和所在行下面的两行;
- "p"粘贴所复制的行内容到光标下面;
- "dd"删除光标所在行内容,"3dd"删除当前光标所在行及以下两行内容;
- "u"恢复到上一步操作(“撤回”)
- "G"光标移动到最后一行;
- "gg"光标移动到第一行;
- "dG"删除光标所在行到文件末尾;
快捷查找文件中内容
操作:按下"esc"键,输入":\想要查找的字段内容",此时光标就会移动到文件中第一个你输入的内容位置,此时按下"N"键,会向下查找相同的字段内容、按下"n"键会向上查找相同。(注:这里的"冒号"和""都是必须的!)。
快捷替换文件中内容
语法:s/xx/xx
替换光标所在行你想要替换的内容 (第一个"xx"输入你想要替换的字段内容,第二个"xx"输入你想要换成什么的字段内容)。
例:
就要输入":s/root/mark"
那么你如果想要把整行的"root"都替换成"mark"的话:你可以输入":s/root/mark/g"(这里的"g"可以理解为"global"全局(整行))
扩展:①,“s"可以换成”%s"代表全文替换("%s/root/mark"把全文的"root"替换成"mark");
②,“s也可以换成"3,5s”(“3,5s/root/mark"把第三行和第5行的"root"替换成"mark”);
③,“s也可以换成"3,$
s”(“3,$
s/root/mark"把第三行到最后一行的"root"替换成"mark”)。
命令模式下扩展
输入":set nu"显示全文行号。
输入":set list"显示全文空行。