Linux的VI编辑器
Linux如何退出VI编辑器
:q 退出
:q! 强行退出(不存盘)
:wq 强制性写入文件并退出。即使文件没有被修改也强制写入,并更新文件的修改时间。
😡 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。
用ESC键只能切换到命令状态
扩展知识:
今天我才知道":x"和":wq"的真正区别,如下:
:wq 强制性写入文件并退出。即使文件没有被修改也强制写入,并更新文件的修改时间。
😡 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。
这两者一般情况下没什么不一样,但是在编程方面,对编辑源文件可能会产生重要影响。因为文件即使没有修改,":wq"强制更新文件的修改时间,这样会让make编译整个项目时以为文件被修改过了,然后就得重新编译链接生成可执行文件。这可能会产生让人误解的后果,当然也产生了不必要的系统资源花销。
更加详细内容:
在 linux 底下最常使用的文书编辑器为 vi ,请问如何进入编辑模式?
在一般模式底下输入: i, I, a, A 为在本行当中输入新字符;(出现 –Insert- )
在一般模式当中输入: o, O 为在一个新的一行输入新字符;
在一般模式当中输入: r, R 为取代字符!(左下角出现 –Replace-)
如何由编辑模式跳回一般模式?
[Esc]
若上下左右键无法使用时,请问如何在一般模式移动光标?
h, j, k, l
若 [pagedown] [ pageup] 在一般模式无法使用时,如何往前或往后翻一页?
[Ctrl] + [f]
[Ctrl] + [b]
如何到本档案的最后一行、第一行;本行的第一个字符、最后一个字符?
G, 1G, 0, $
如何删除一行、n行;如何删除一个字符?
dd, ndd, x 或 X (dG 及 d1G 分别表示删除到页首及页尾)
如何复制一行、n行并加以贴上?
yy, nyy, p 或 P
如何搜寻 string 这个字符串?
?string (往前搜寻)
/string (往后搜寻)
如何取代 word1 成为 word2,而若需要使用者确认机制,又该如何?
:1,$s/word1/word2/g 或
:1,$s/word1/word2/gc (需要使用者确认)
如何读取一个档案 filename 进来目前这个档案?
:r filename
如何另存新档成为 newfilename?
:w newfilename
如何存盘、离开、存盘后离开、强制存盘后离开?
:w; :q: :wq; :wq!
如何设定与取消行号?
:set nu
:set nonu
参考推荐:
原文: Linux的VI编辑器
版权所有: 本文系米扑博客原创、转载、摘录,或修订后发表,最后更新于 2010-04-01 16:02:56
侵权处理: 本个人博客,不盈利,若侵犯了您的作品权,请联系博主删除,莫恶意,索钱财,感谢!
转载注明: Linux的VI编辑器 (米扑博客)