vi保存退出命令x和wq的区别

每天做得最多的就是用VIM打开文件、保存文件。使用VIM编辑文件时我习惯用'x'命令在保存并退出。而我的一个同事习惯用'wq'命令保存并退出,有一次他问我用'x'和'wq'有什么区别吗?我当时答不出来。

今天我在用'x'命令保存退出时发现了一个有趣的地方,保存退出后有时会显示 "filename" 1L, 10C 已写入  这么一行,有时又不显示。多试了几次才发现在没有修改文件时用'x'命令保存退出时不会显示 "filename" 1L, 10C 已写入 ,文件的修改时间也不会发生变化。有修改时则会显示这一行,而且文件的修改时间也会随之更新。接着我又使用'wq'命令保存退出时终于发现了点问题:不管我是否修改了文件内容,用'wq'命令保存退出时都会显示 "filename" 1L, 10C 已写入 ,并更新文件的修改时间。呵呵原来"x"与"wq"的的真正区别在这里:

wq   强制性写入文件并退出。即使文件没有被修改也强制写入,并更新文件的修改时间。
x    写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。

posted @ 2011-08-31 14:37  蓝色夏威夷  阅读(1457)  评论(2编辑  收藏  举报