Vi保存退出'x '和'wq '之间的差异
Vi是Unix/Linux系统中最常用的编辑器之一。我习惯使用'x '命令保存文件并退出。我不想使用'wq '命令,因为它必须再键入一个字母。
然而,今天我学到了'X '和'wq '的真正区别,如下:
:wq强制写入文件并退出。即使文件未被修改也强制写入,并更新文件的修改时间。
:x写入文件并退出。文件修改时才写,更新文件修改时间,否则不更新文件修改时间。
一般来说,两者没有区别,但在编程方面,可能会对编辑源文件产生重要影响。因为即使文件没有被修改,'wq '强制更新文件的修改时间,会让make整个项目认为文件被修改了,然后重新编译链接生成可执行文件。这可能会导致误导的后果,当然也会导致不必要的系统资源支出。