linux vi保存?vim修改后如何保存
linux vi不能保存文件
Linux系统vi编辑只读文档无法保存的解决办法,使用普通用户编辑nginx.conf等配置文件:
保存的时候会提示:没有Root Permission可以用如下方法解决:
保存时加上:
:w!sudotee%
针对vi不能保存文件的错误,还有可能没有配置当前用户sudo权限,用sudo时提示"xxx is not in the sudoers file. This incident will be
reported.其中XXX是用户名,也就是用户名没有权限使用sudo,只要修改一下/etc/sudoers文件就行了。下面是修改方法:
进入超级用户模式。也就是输入"su-",系统会让输入超级用户密码,输入密码后就进入了超级用户模式。
添加文件的写权限,输入命令"chmod u+w/etc/sudoers"。
编辑/etc/sudoers文件。也就是输入命令"vim/etc/sudoers",输入"i"进入编辑模式,找到这一行:"root
ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名),然后保存(就是先按一
下Esc键,然后输入":wq")退出。
撤销文件的写权限。也就是输入命令"chmod u-w/etc/sudoers"。
再次保存:
#查看是否保存成功:
$grepsudonginx.conf
#test:w!sudotee%
linux怎么保存vi编辑后的文件
在使用vi编辑器时,完成文件编辑后需要保存工作内容并退出。执行此操作有两种基本方法:一种是直接保存并退出,另一种是仅保存不退出。
若选择保存并退出vi编辑器,输入命令::wq。
若想在保存的同时强制执行操作,不考虑当前编辑状态,可以使用命令::wq!。
如果仅想保存当前文件而不立即退出vi编辑器,使用命令::w或:w file,将内容保存到指定文件中,而无需关闭编辑器。
对于强制保存操作,不考虑当前编辑内容是否需要保存,输入命令::w!。
若只想保存文件但不关闭vi编辑器,避免使用:wq命令,可以使用:w命令达到目的。
当需要在未保存的情况下直接退出vi编辑器,可以输入命令::q,这将不保存当前文件内容。
若希望在未保存的情况下强制退出vi编辑器,不保存任何修改,使用命令::q!。
最后,若放弃所有当前编辑内容,关闭vi编辑器,使用命令::e!。
vim编辑器是什么Linuxvim的使用方法
使用过Unix的用户应该都有接触过VI编辑器,这是Unix最初的编辑器,使用控制台图形模式来模拟文本编辑窗口,允许查看文件中的行、在文件中移动、插入、编辑和替换文本。当然它的复杂化让人厌恶,但是其大量特性支撑着Unix系统,而在Linux中vi得到改进,也就是接下来要讲的vim编辑器。那什么是vim?vim要如何使用?下面就跟着一起来看看吧。
什么是vim?
Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
简单的来说,vi是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。vim则可以说是程序开发者的一项很好用的工具。
连vim的官方网站自己也说vim是一个程序开发工具而不是文字处理软件。
vi/vim的使用
基本上vi/vim共分为三种模式,分别是命令模式(Commandmode),输入模式(Insertmode)和底线命令模式(Lastlinemode)。这三种模式的作用分别是:
命令模式:
用户刚刚启动vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
以下是常用的几个命令:
i切换到输入模式,以输入字符。
x删除当前光标所在处的字符。
:切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。
命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
输入模式
在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
字符按键以及Shift组合,输入字符;
ENTER,回车键,换行;
BACKSPACE,退格键,删除光标前一个字符;
DEL,删除键,删除光标后一个字符;
方向键,在文本中移动光标;
HOME/END,移动光标到行首/行尾;
PageUp/PageDown,上/下翻页;
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线;
ESC,退出输入模式,切换到命令模式;
底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
q退出程序;
w保存文件;
按ESC键可随时退出底线命令模式。
简单的说,我们可以将这三个模式想成底下的图标来表示:
vi/vim按键说明
第一部分:一般模式可用的光标移动、复制粘贴、搜索替换等。
第二部分:一般模式切换到编辑模式的可用的按钮说明。
第三部分:一般模式切换到指令行模式的可用的按钮说明。
特别注意,在vi/vim中,数字是很有意义的!数字通常代表重复做几次的意思!也有可能是代表去到第几个什么什么的意思。
举例来说,要删除50行,则是用『50dd』对吧!数字加在动作之前,如我要向下移动20行呢?那就是『20j』或者是『20↓』即可。