菜鸟科技网

vf追加命令如何使用?

“追加命令”在 vifm 中可以理解为两种情况:

vf追加命令如何使用?-图1
(图片来源网络,侵删)
  1. 向命令行输入框中追加文本(在当前输入内容的基础上添加)。
  2. 执行一个追加操作的命令(向文件追加内容)。

下面我将详细解释这两种情况。


向命令行输入框追加文本

vifm 的命令行模式下(当你按下 时),你可以使用以下快捷键来高效地编辑命令。

光标移动和基本编辑

这些快捷键与 Vim 的命令行模式非常相似:

快捷键 功能
/ 将光标向左/向右移动一个字符。
Ctrl + B / Ctrl + E 将光标移动到命令行的开头/末尾。
Ctrl + A / Ctrl + E (同上) 将光标移动到命令行的开头/末尾。
Ctrl + U 删除光标到命令行开头的所有文本。
Ctrl + K 删除光标到命令行末尾的所有文本。
Ctrl + W 删除光标前的一个单词(以空格或 分隔)。
Ctrl + H / Backspace 删除光标前的一个字符。
Delete 删除光标后的一个字符。

追加特定内容(最常用的“追加”操作)

这是“追加命令”最直接的应用场景,例如你想在当前路径下执行某个命令。

vf追加命令如何使用?-图2
(图片来源网络,侵删)
快捷键 功能 示例
Ctrl + L 追加当前光标所在文件的完整路径到命令行。 如果光标在 ~/project/src/main.py,按下 后再按 Ctrl + L,命令行会变成 ~/project/src/main.py
Ctrl + \`` (反引号) | **追加当前光标所在文件的文件名**(不含路径)。 | 同样在main.py上,按下:后再按Ctrl + `,命令行会变成:main.py`。
在命令行中输入时, 会自动替换为当前光标所在文件的完整路径 输入 vim % 会直接打开当前文件。
<cfile> 在自定义命令或用户命令中,<cfile>被替换为当前光标所在文件的完整路径

综合示例: 假设你想用 git add 命令添加当前目录下的一个文件 config.ini

  1. vifm 中,光标移动到 config.ini 上。
  2. 按下 进入命令行模式。
  3. 直接输入 git add
  4. 按下 `Ctrl + ``,文件名 config.ini 会被追加到命令后面。
  5. 你的命令行会显示为 git add config.ini
  6. 按回车执行。

执行追加操作的命令

这里指的是 vifm 内置的、能够对文件或目录内容进行“追加”操作的命令。

writew 命令

这是最核心的追加命令,在 vifm 中,你可以通过 w 命令将当前文件的内容追加到另一个文件中。

语法:

vf追加命令如何使用?-图3
(图片来源网络,侵删)
w >> {目标文件}

示例: 假设你有一个日志文件 app.log,你想把它的内容追加到 all_logs.log 中。

  1. vifm 中打开 app.log(即让它成为当前活动的文件)。
  2. 按下 进入命令行。
  3. 输入以下命令并回车:
    w >> all_logs.log
  4. app.log 的内容就会被追加到 all_logs.log 的末尾。all_logs.log 不存在,vifm 会创建它(但请注意,>> 在某些 vifm 版本或配置下可能不会自动创建文件,此时需要先创建文件)。

对比 >>>

  • w > file覆盖写入。file 存在,其内容会被替换。
  • w >> file追加写入。file 存在,内容会被添加到文件末尾。

append 命令

append 命令本身是进入插入模式,让你在当前文件的光标后追加多行文本,当你在插入模式下输入完所有内容后,按 Esc 返回普通模式,这些文本就被“追加”到文件中了。

语法:

append
{输入你的文本...}
{输入你的文本...}
.  (输入一个句点并回车,结束追加模式)

示例:

  1. 打开一个空文件 newfile.txt
  2. 按下 输入 append 并回车。
  3. 现在你可以直接输入文本,每按一次回车就是新的一行。
    This is line 1.
    This is line 2.
    This is line 3.
  4. 输入完成后,单独输入一个句点 并回车。
  5. 你会发现 newfile.txt 的内容就是你刚刚输入的所有行。

外部命令的追加

你可以使用 来执行任何外部 shell 命令,并利用 shell 的追加功能。

示例: 将当前目录的列表追加到 directory_listing.txt 中。

  1. vifm 的任意位置。
  2. 按下 输入:
    !ls -l >> directory_listing.txt
  3. 回车执行。ls -l 的输出结果就会被追加到 directory_listing.txt 中。

追加类型 常用场景 关键命令/快捷键
向命令行追加文本 快速构建命令,如 git add, vim, cp Ctrl + L (追加路径)
Ctrl + \`` (追加文件名)<br>%` (路径占位符)
执行追加操作 合并日志、备份内容、在文件末尾添加信息 w >> {文件} (追加文件内容)
append (进入多行插入模式)
!cmd >> {文件} (执行外部命令追加)

希望这份详细的解释能帮助你更好地理解和使用 vifm 的追加命令!

分享:
扫描分享到社交APP
上一篇
下一篇