我现在用的键盘支持硬件编程,比方说我要退出vim,得依次按下Esc➤:➤w➤q➤回车,总共五个键,编程后,我只要按下Fn+q,键盘就会自动为我输入刚才的五个键,而且此设定是保持在键盘上的,更换电脑也有效,不用重新设定。为此小聪明,一直沾沾自喜。直到今天发现了":wq"和":x"的区别。
我们来做个实验:
先touch两个文件,分别为文件1和文件2
[root@VM_114_111_centos di]# touch 1 2 [root@VM_114_111_centos di]# stat 1 2 File: `1' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fc01h/64513d Inode: 598029 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-01-03 12:08:28.000000000 +0800 Modify: 2018-01-03 12:08:28.000000000 +0800 Change: 2018-01-03 12:08:28.000000000 +0800 File: `2' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fc01h/64513d Inode: 598030 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-01-03 12:08:28.000000000 +0800 Modify: 2018-01-03 12:08:28.000000000 +0800 Change: 2018-01-03 12:08:28.000000000 +0800
用vim打开文件1,打开后直接:wq退出。
用vim打开文件2,打开后直接:x退出。
[root@VM_114_111_centos di]# stat 1 2 File: `1' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fc01h/64513d Inode: 598029 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-01-03 12:08:28.000000000 +0800 Modify: 2018-01-03 12:10:38.000000000 +0800 Change: 2018-01-03 12:10:38.000000000 +0800 File: `2' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fc01h/64513d Inode: 598030 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-01-03 12:08:28.000000000 +0800 Modify: 2018-01-03 12:08:28.000000000 +0800 Change: 2018-01-03 12:08:28.000000000 +0800
此时发现文件1的mtime和ctime发生了变化。
得出结论:
尽量别用:wq来退出,因为你用:wq退出vim的话,哪怕你只是用vim看了一眼文件,没做任何改动,:wq都会帮你更新文件的Modify和Change时间,有人会说,就算更新这两个时间也无伤大雅,若是开发喜欢用:wq的话,他:wq看一眼,这样会让make编译整个项目时以为文件被修改过了,然后就得重新编译链接生成可执行文件。浪费时间浪费电。用:x的话,若你对文件没做任何改动,Modify和Change是不会变动的,只有当你确实改动了文件,Modify和Change才会改变。
另外:x有个快捷键ZZ,在命令模式直接按两个大写的z就等于:x退出。什么大写的z不知道怎么输?看这里
原创文章,转载请注明: 转载自笛声
本文链接地址: 论退出VIM的正确姿势
10 条评论
我退出,要么:q!,要么ZZ。
好习惯。
对于小白的我,用WinSCP连接,然后用EditPlus编辑,好像也很方便
装个可道云,直接在线编辑,更方便,不过要注意网站权限引起的安全问题。
为啥这么麻烦,直接按esc就可以退出啊
VIM/VI不能直接按esc退出。
:q :q!
绑定了leader,q直接退出,w就是:wp
这速度越来越快了。又看不到进度条,瞬间就加载了。膜拜~
如何输入大写z,好奇的我点开了“看这里”Σ( ° △ °|||)︴