在 vim 中可用 :w 命令配合行号范围、可视模式或标记将指定行另存为新文件,如 :5,10w newfile.txt,支持相对/绝对路径,保存不改变原文件和缓冲区。

在 Vim 中,可以使用 :w 命令配合行号范围,把当前文件的特定几行另存为新文件。
指定行号范围保存(最常用)
例如,要把第 5 到第 10 行保存为 newfile.txt,光标可位于任意位置,直接输入:
注意:行号之间用英文逗号分隔,w 后跟目标文件路径(支持相对/绝对路径)。
- 若只保存单行(如第 7 行),写成
:7w newfile.txt - 若保存从当前行到第 15 行,可用
.,15w newfile.txt(.表示当前行) - 若保存当前行及之后连续 4 行,可用
.,+4w newfile.txt
可视模式下选择并保存
适合不确定行号、靠内容定位的情况:
- 按
V进入行可视模式(或v字符模式、Ctrl+v列模式) - 用方向键或
j/k选中目标行 - 松开后输入
:w newfile.txt(Vim 会自动补全为w newfile.txt)</code:> </li> </ul> <p>只要选中了内容,执行 <code>:w就只会写入所选部分。用地址标记快速定位再保存
如果要反复操作某几行,可先打标记:
- 将光标移到起始行,输入
ma(设标记a) - 移到结束行,输入
mb(设标记b) - 然后执行
:'a,'bw newfile.txt
标记名是单个小写字母,
'a和'b分别代表对应行的行首位置。补充说明
保存后不会影响原文件,也不会改变当前缓冲区内容。新文件路径若已存在,默认会覆盖;如需确认,可在命令前加
!(如:5,10w! newfile.txt),但通常无需加。不复杂但容易忽略:确保目标路径有写入权限,且目录存在;路径支持
~/、./等简写。 - 将光标移到起始行,输入











