vim命令怎么编辑文件和保存的内容_linux退出编辑命令

vim命令怎么编辑文件和保存的内容_linux退出编辑命令关于文件的保存前面已经说了 :wq、q、:q!,但还有一些保存文件的细节需要知道。当 vim 打开文件,如果没有任何修改,:q 可以顺利退出,如果有修改,vim 会提示 “已修改单位保存,可用 ! 强制执行”,执行 :q! 放弃所有修改,并且这种情况下 vim 不会再警告提

关于文件的保存前面已经说了 :wq、q、:q!,但还有一些保存文件的细节需要知道。

当 vim 打开文件,如果没有任何修改,:q 可以顺利退出,如果有修改,vim 会提示 “已修改单位保存,可用 ! 强制执行”,执行 :q! 放弃所有修改,并且这种情况下 vim 不会再警告提示。

如果 vim 打开文件后,没有做任何修改,然后输入 :w 后接着 :q 退出(2次命令),文件有没有修改呢? 答案是有,文件的属性被修改了,:w 命令就是写入文件,文件的时间会修改。

wangbo@wangbo-VirtualBox:~/test/vim$ ls -l 1.txt -rw-rw-r-- 1 wangbo wangbo 14 12 17 10:50 1.txt wangbo@wangbo-VirtualBox:~/test/vim$ vim 1.txt // 不修改内容,输入 :w  :q  wangbo@wangbo-VirtualBox:~/test/vim$ ls -l 1.txt -rw-rw-r-- 1 wangbo wangbo 14 12 17 10:51 1.txt 

同理即便内容不改变 wq 也会写入文件,为了清楚的演示,给 ls 加上 –full-time 参数,它可以显示文件的准确时间。

wangbo@wangbo-VirtualBox:~/test/vim$ ls --full-time 1.txt -rw-rw-r-- 1 wangbo wangbo 14 2020-12-17 10:58:04. +0800 1.txt wangbo@wangbo-VirtualBox:~/test/vim$ vim 1.txt // 使用 :wq 退出 wangbo@wangbo-VirtualBox:~/test/vim$ ls --full-time 1.txt -rw-rw-r-- 1 wangbo wangbo 14 2020-12-17 10:59:32. +0800 1.txt wangbo@wangbo-VirtualBox:~/test/vim$ vim 1.txt // 使用 :wq 退出 wangbo@wangbo-VirtualBox:~/test/vim$ ls --full-time 1.txt -rw-rw-r-- 1 wangbo wangbo 14 2020-12-17 10:59:42. +0800 1.txt 

干嘛纠结这个? 改变文件时间有那么重要么? 有! 有些场合真的很重要,举 2 个例子:

第一: 在文件同步操作中,可能会先比较文件的属性,以此来判断文件是否被修改而不依赖于文件的内容,如果大量的文件时间被修改,但是内容没有变,这样的同步可能显示效率低下无意义,浪费带宽和时间;

第二: 更常见的是在程序编译中,由于文件的时间被修改了,系统需要重新把这些文件编译,对于特别的大的工程,一个文件的修改会导致依赖文件都要重新编译,这会导致程序编译时间边长,浪费资源和时间。

因此我们希望当文件内容没有修改的时候,不要强制写入文件,有修改的时候才写入,vim 提供的 :x (exit) 就能符合这种要求,所以 :x 是更好的保存退出 vim 的方式。

如果希望把文件另存为可以使用 :w 3.txt 或 :wq 3.txt 的方式,使用 :w 还可以选择要保存的行到另外的文件,:2,10 w 2-10.txt 表示把第2行到10行保存到文件 2-10.txt 中,: 后跟数字在 vim 里一般表示行数,比如输入 :2 会让当前光标跳转到第 2 行,在以后的章节还会详细讲解。

你可能会看到 :qa!,它用于多窗口的时候退出所有的缓冲区并且放弃修改,目前还没有讲到 vim 的多窗口模式,暂且了解。

vim命令怎么编辑文件和保存的内容_linux退出编辑命令

如果在编辑过程中,想放弃上次 :w 之后的修改,可以使用 :e! 命令丢弃修改,如果打开文件后没有执行过 :w,那 :e! 相当于恢复到打开文件的初始状态。

vim命令怎么编辑文件和保存的内容_linux退出编辑命令

执行 :e! 后,最近的修改 wronge somthing 将被丢弃,继续 :q 退出 vim,就像文件从未被打开过一样。

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/16221.html

(0)
上一篇 2024年 9月 18日
下一篇 2024年 9月 18日

相关推荐

关注微信