linux vim
• vim 刚刚打开文件进入命令模式,主要功能在于查看内容
○ 命令模式
○ 插入模式
○ 扩展命令模式
• vim 如果想编辑信息,进入插入模式
○ i insert 当前位置插入
○ a append 下一位置插入
○ I 行首插入
○ A 行尾插入
○ o 下方打开新行插入
○ O 上方打开新行插入
• 插入模式回到命令模式: Esc
• 扩展命令模式:冒号
○ :wq 保存退出
○ :q! 不保存退出
○ :wq! 强行保存退出
○ :w file2 另存为
• 扩展命令模式回到命令模式:Esc
• 直接编辑第20行:vim +20 file
• 编辑包含startx的行:vim +/.*startx file
• 扩展模式:
○ 把一个文件复制到当前行::r filename
○ 另存为::w! filename
○ 临时执行其他命令::! command
○ 命令执行结果放到当前文件中::r! command
• 命令模式:
○ 文本跳动
§ H 光标跳到首行
§ M 中间行
§ G 最后一行
§ L 页底
§ 3G 第3行
○ 行跳动
§ ^ 跳到行首第一个非空白字符
§ 0 跳到行首
§ $ 跳到行尾
○ 其他
§ x 删除光标位置的字符(剪切)
§ 3x 从当前位置删除3个字符
§ p 粘贴
§ ~ 大小写转换
§ J 删除当前行后的换行符(和下一行合并为一行)
• 切换模式
○ r 替换光标位置字符
○ R 一直替换,直到按Esc
• 删除
○ dd 删除整行
○ 10 dd 删除10行
○ d$ 删除到行尾
○ d^ 删除到非空行首
○ d0 删除与到行首
○ dw 删除单词
○ 1,30d 删除1到30行
• 查找
○ /word 正向查找
○ ?word 你向查找
○ n 下一个
○ N 上一个
○ s/查找内容/替代内容:
§ :ls s/root/wang 单次替换
§ :ls s/root/wang g 全局替换
§ $s/^[^#]/[#&]/ 非井号行前添加井号