返回

如何在右键菜单中提取文件名内容并执行自定义命令?

windows

从文件名中提取内容并通过右键菜单执行命令

简介

在处理文件时,有时我们需要从文件名中提取特定部分,以便将其用作其他命令的参数。本文将详细介绍一种通过右键菜单执行此任务的方法。

解决方案

要从文件名中提取内容并通过右键菜单执行命令,我们需要遵循以下步骤:

1. 创建批处理脚本

首先,我们需要创建一个批处理脚本(例如 extract-execute.bat),其中包含以下代码:

@/start "" for /f "tokens=2 delims=[]" %%A in ("%~1") do set "bracket_value=%%A"
yt-dlp --force-overwrites -S res:360 "%bracket_value %"

这个批处理脚本将从方括号中提取 11 个字符,并将其与 yt-dlp 命令一起使用。

2. 将批处理脚本注册到右键菜单

下一步,我们需要将批处理脚本注册到右键菜单中。为此,我们需要编辑注册表:

  • 打开注册表编辑器 (regedit.exe)。
  • 导航到 HKEY_CLASSES_ROOT\*\shell
  • 右键单击“shell”键并选择“新建”>“项”。
  • 将新项命名为“Extract & Execute”。
  • 右键单击“Extract & Execute”键并选择“新建”>“项”。
  • 将新项命名为“command”。
  • 右键单击“command”键,然后选择“修改”。
  • 在“数值数据”字段中,输入以下内容:
C:\path\to\extract-execute.bat "%1"

确保将 C:\path\to\extract-execute.bat 替换为批处理脚本的实际路径。

3. 使用右键菜单命令

完成上述步骤后,我们可以通过右键单击文件并选择“Extract & Execute”命令来提取文件名中的内容并执行命令。

案例场景

我们来考虑一个实际的案例场景,说明如何使用此方法:

  • 假设我们有一个名为 [film-name] (2023) (HD).mp4 的电影文件。
  • 我们想要使用 yt-dlp 命令下载该电影。
  • 我们可以右键单击该文件并选择“Extract & Execute”命令。
  • 这将触发批处理脚本,从文件名中提取方括号中的电影名称 (2023) (HD)。
  • 提取的内容将与 yt-dlp 命令一起使用,以下载电影。

常见问题解答

1. 我在注册批处理脚本时遇到问题。我该怎么做?

请确保您已正确编辑注册表,并且您有足够的权限进行更改。

2. 右键菜单命令不起作用。为什么?

检查批处理脚本的路径是否正确,并且文件扩展名与注册表中指定的扩展名匹配。

3. 我可以提取其他内容而不是方括号中的内容吗?

可以,您可以在批处理脚本中修改 tokens=2 delims=[] 语句以提取所需的内容。

4. 我可以将此方法用于其他命令吗?

是的,此方法可以用于任何接受文件路径作为参数的命令。

5. 我想通过右键菜单执行多个命令。如何做到这一点?

您可以创建一个包含所有所需命令的批处理脚本,然后将其注册到右键菜单中。

结论

通过遵循本文中概述的步骤,您可以轻松从文件名中提取内容并通过右键菜单执行命令。此方法可用于自动化各种任务,提高您的工作效率。