Linux vi写入的基础操作
在Linux系统中,vi编辑器是文本编辑的常用工具,掌握其写入操作是高效管理文件的关键,vi分为命令模式和插入模式,写入操作主要涉及从命令模式切换到插入模式,以及保存并退出文件,以下是详细的步骤和注意事项。

进入插入模式与输入文本
首先需要从命令模式进入插入模式,vi启动后默认处于命令模式,此时无法直接输入文本,通过以下按键可进入插入模式:
i:在光标当前位置插入文本;a:在光标后插入文本;o:在当前行下方新建一行并插入文本;O:在当前行上方新建一行并插入文本。
进入插入模式后,即可直接输入所需内容,输入完成后,按Esc键返回命令模式,此时可通过其他命令进行保存或退出操作。
保存文件但不退出
在命令模式下,若需保存当前修改但不退出vi,可使用以下命令:
w:保存文件到当前路径;w filename:将文件另存为指定名称(若文件不存在则创建,存在则覆盖);w! filename:强制保存文件(适用于只读文件或权限不足的情况)。
保存当前文件为test.txt,输入w test.txt后按回车即可,若文件已存在且未修改,直接按回车即可;若已修改,则保存内容覆盖原文件。

保存并退出文件
完成编辑后,通常需要保存文件并退出vi,以下是常用命令:
wq:保存文件并退出;wq!:强制保存并退出(适用于无写入权限时);x:保存文件并退出(若文件未修改则直接退出,不更新时间戳)。
若误输入wq但不想保存,可按Esc取消命令,或输入q!强制退出不保存。
特殊场景的写入操作
-
新建文件并写入
若需创建新文件,可直接在命令模式下输入w newfile.txt,此时文件会被创建并进入编辑状态。 -
到文件
使用w >> filename命令可将当前内容追加到指定文件末尾,而非覆盖原文件。
-
编辑只读文件
默认情况下,vi无法编辑只读文件,若需修改,可使用w!强制保存,前提是用户对该文件有所有者权限或root权限。
常见问题与解决
- 提示“E45: ‘readonly’ option is set”:文件为只读状态,需使用
w!强制保存。 - 提示“E212: Can’t open file for writing”:权限不足,可通过
chmod修改文件权限或使用sudo提升权限。 - 误操作未保存:若未保存即退出,可通过
vi -r filename尝试恢复临时文件(需系统开启自动备份功能)。
高级技巧
- 自动保存:在
.vimrc配置文件中添加set autowrite,每次切换文件时自动保存当前修改。 - 分屏写入:使用
split命令分屏后,可在多个窗口中编辑不同文件,通过w统一保存。 - 批量写入:结合
sed或awk命令,通过管道将处理结果直接写入vi,例如echo "text" | vi - filename。
Linux vi写入操作虽看似简单,但熟练掌握命令模式与插入模式的切换、保存及退出命令,能显著提升文本编辑效率,无论是日常配置文件修改还是脚本编写,vi的灵活性和功能性都能满足多样化需求,建议初学者多练习基础命令,逐步探索高级功能,以充分发挥vi在Linux环境中的优势。



















