vim编辑器 介绍 Vim是一个类似于Vi的著名的功能强大的文本编辑器,能够得到广大厂商与用户的认可。Vim编辑器设置了三种不 同模式,每种模式又支持多种不同的命令和快捷键,在熟练使用之后可以大大提高工作效率 三种模式 命令模式:控制光标移动,可对文本进行复制/粘贴等操作 输入模式:正常文本录入 行末模式:保存/退出文档,以及设置编辑环境 模式转换 命令模式->输入模式:a i o等键 输入模式->命令模式:ESC键 命令模式->末行模式::键 末行式->命令模式:ESC键
a:在光标后输入 i:在光标前输入 o:在光标下一行输入 A:在首行输入 I:在行尾输入 O:在光标上一行输入 命令模式 光标跳转 上下左右:kjhl #command:跳转#个字符 单词跳转 w:下个单词的词首 e:当前单词的词尾 b:当前单词的词首 #command:跳转#个单词 行首行尾跳转 ^:行首(非空白字符) 0:行首 $:行尾 行间移动 单词跳转 w:下个单词的词首 e:当前单词的词尾 b:当前单词的词首 #command:跳转#个单词 行首行尾跳转 ^:行首(非空白字符) 0:行首 KaTeX parse error: Expected 'EOF', got '#' at position 12: :行尾 行间移动 #̲G:跳转第N行 G1G:跳转第… d0 dw de db dd:删除光标所在行 #dd:删除多行 粘贴命令 p 复制命令 y:复制,工作行为类似d 撤销命令 u:撤销前一次 #u:撤销前N次 搜索命令 搜索操作: 😕 | ? n:查找下一个匹配 N:跳转上一个匹配末行模式 保存退出 :q 退出 :q! 强制退出,丢弃做出的修改 :x 保存退出 :w /PATH/TO/SOMEWHERE ZZ:保存退出 地址定界 N:第N行 N,M:第N行到第M行 N,+M:第N行到第N+M行 .:当前行 $:最后一行 %:全文 /part1/,/part2/:被part1匹配到被part2匹配 使用方式:后跟一个编辑命令 d/y/ w:将范围内的内容另存为 r:在指定位置插入指定文件的所有内容 查看并替换 s/查找内容/替换内容/修饰符 修饰符: i:忽略大小写 g:全局替换,默认情况,只替换每一行第一次出现 #:也可以作为分隔符,此时/不会作为分隔符 多文件模式 vim file1,file2… :next :prev :first :latest :qwall 窗口分割 vim ‐o | ‐O file1,file2… ‐o:水平分割 ‐O:垂直分割 窗口跳转: CTRL‐W h 跳转到左边的窗口 CTRL‐W j 跳转到下面的窗口 CTRL‐W k 跳转到上面的窗口 CTRL‐W l 跳转到右边的窗口CTRL‐W t 跳转到最顶上的窗口 CTRL‐W b 跳转到最底下的窗口 定制Vim 配置文件:永久有效 全局:/etc/vimrc 个人:~/.vimrc 行末:当前进程有效 行号 显示:set number,简写为set nu 取消显示:set nonumber,简写为set nonu 括号匹配 匹配:set showmatch,简写为set sm 取消:set nosm 自动缩进 启用:set ai 禁用:set noai 高亮搜索 启用:set hlsearch 禁用:set nohlsearch 语法高亮 启用:syntax on 禁用:syntax off 忽略字符的大小写 启用:set ic 不忽略:set noic 获取帮助 : help chmod命令 – 改变文件或目录权限 chmod命令的英文原意是“change the permissions mode of a file”,我们简称为“change mode”,意为用来改变文件或目录权限的命令,但是只有文件的属主和超级用户root才能执行这个命令。有两种模式,一种是采用权限字母和操作符表达式;另一种是采用数字。 语法格式: chmod [参数] [文件] 常用参数: -c 若该文件权限确实已经更改,才显示其更改动作 -f 若该文件权限无法被更改也不显示错误讯息 -v 显示权限变更的详细资料 -R 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更) 参考实例 将档案 file1.txt 设为所有人皆可读取: [root@linuxcool ~]# chmod a+r file.txt 将目前目录下的所有文件与子目录皆设为任何人可读取 : [root@linuxcool ~]# chmod -R a+r * 将 file.txt 设定为只有该文件拥有者可以执行: [root@linuxcool ~]# chmod u+x file.txt chown命令 – 改变文件或目录用户和用户组 Linux/Unix 属于多用户多任务操作系统,所有的文件皆有拥有者。利用 chown 命令可以将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID,组可以是组名或者组ID,文件是以空格分开的要改变权限的文件列表,支持通配符。 一般来说,这个指令仅限系统管理者(root)所使用,普通用户没有权限改变文件所属者及所属组。 语法格式:chown [参数] 常用参数: -R 对目前目录下的所有文件与子目录进行相同的拥有者变更 -c 若该文件拥有者确实已经更改,才显示其更改动作 -f 若该文件拥有者无法被更改也不要显示错误讯息 -h 只对于连结(link)进行变更,而非该 link 真正指向的文件 -v 显示拥有者变更的详细资料 –help 显示辅助说明 –version 显示版本 参考实例 将test.txt文件用户组与用户都改为bin: [root@linuxcool ~]# ll test.txt.bz2 -rw-r–r-- 1 root root 56 Jul 22 20:17 test.txt.bz2 [root@linuxcool ~]# chown bin:bin test.txt.bz2 [root@linuxcool ~]# ll test.txt.bz2 -rw-r–r-- 1 bin bin 56 Jul 22 20:17 test.txt.bz2 显示改动动作: [root@linuxcool ~]# ll test.txt -rw-r–r-- 1 root root 45 Jul 22 21:11 test.txt [root@linuxcool ~]# chown -c bin:bin test.txt changed ownership of `test.txt’ to bin:bin 将当前目录下所有文件的拥有者都改为 linuxcool,用户组改为 linuxcoolgroup: [root@linuxcool ~]# chown -R linuxcool:linuxcoolgroup * 与该功能相关的Linux命令: • info命令 – 阅读info格式的文件 • mcopy命令 – 复制 MSDOS 格式文件到Linux中 • awk命令 – 文本和数据进行处理的编程语言 • xclip命令 – 跨窗口复制文字 • e2label命令 – 设置文件系统的卷标 • ausearch命令 – 搜索审计记录 • minfo命令 – 显示MS-DOS文件系统的各项参数 • zegrep命令 – 文件字符串过滤 • mv命令 – 移动或改名文件 • svn命令 – subversion命令行客户端程序