我有一些程序会创建临时文件、备份文件或类似的不重要的文件。例如,维姆Windows 默认在 中创建一个备份文件filename.txt~
。
我有时需要清理目录并删除所有这些文件。我为此制作了一个简单的 .bat 文件。但是,必须启动 CMD、导航到文件夹、运行脚本,这很麻烦。特别是因为这是一个我想经常在各个文件夹上运行的脚本。而且我不想将脚本复制到多个文件夹,因为这将是一场维护噩梦。
因此,我认为最好的解决方案是添加一个允许我运行脚本的右键单击菜单项。这样我就可以右键单击资源管理器中的文件夹,然后单击清理,然后让我的脚本在此文件夹上运行。
所以我的问题是:如何添加运行自定义批处理脚本的右键单击菜单操作?
答案1
我已在 Windows XP SP3 上尝试使用此 .reg 键。目前没有 Windows 7 可以正确测试,但应该几乎相同。
- 打开记事本并粘贴下面的代码。
- 根据您的需要进行编辑。
- 另存为 MyScript1.reg
- 双击导入注册表。
- 通过右键单击资源管理器中的任意目录进行测试
Windows 注册表编辑器版本 5.00 [HKEY_CLASSES_ROOT\目录\shell\MyScript1] @="执行 MyScript1" [HKEY_CLASSES_ROOT\Directory\shell\MyScript1\命令] @="\"C:\\MyScriptsDirectory\\MyScript1Directory\\MyScript1.bat\" \"%1\""
答案2
实际上,目前的答案并没有过时。我在 Windows 10 上尝试了完全相同的操作,并能够将其添加Run Batch script
到 Windows 中所有文件夹的上下文菜单中。
这是我的批处理脚本的内容(不适用于UNC 路径):
@ECHO 关闭 ECHO %~n0 是使用以下参数调用的: 设置参数=%* 如果没有定义参数,则转到结束 回显 %* :结尾 暂停
我所做的注册表更改可以通过此 REG 文件复制:
Windows 注册表编辑器版本 5.00 [HKEY_CLASSES_ROOT\Directory\shell\运行批处理脚本] @="&运行批处理脚本" [HKEY_CLASSES_ROOT\Directory\shell\Run Batch 脚本\命令] @="\"H:\\BATCH_FILE_PATH\\context-batch.bat\" \"%1\""
这只会为 Windows 中的所有目录/文件夹添加一个上下文菜单项。如果您希望它显示每个文件,您可以使用以下命令:
Windows 注册表编辑器版本 5.00 [HKEY_CLASSES_ROOT\*\shell\运行脚本] @="运行&script" [HKEY_CLASSES_ROOT\*\shell\运行脚本\命令] @="\"H:\\BATCH_FILE_PATH\\context-batch.bat\" \"%1\""
或者,您可以Send To
通过创建批处理脚本的快捷方式并将其放在%APPDATA%\Microsoft\Windows\SendTo
(或shell:sendto
在地址栏中输入)下,将批处理脚本添加到项目列表中
如果您希望脚本显示在右键单击目录内的空白处(目录背景?)时出现的上下文菜单中,您可以使用以下 REG 文件:
Windows 注册表编辑器版本 5.00 [HKEY_CLASSES_ROOT\Directory\Background\shell\Run批处理脚本] @="&运行批处理脚本" “图标”=“%SystemRoot%\\System32\\shell32.dll,71” [HKEY_CLASSES_ROOT\Directory\Background\shell\Run Batch 脚本\命令] @="H:\\BATCH_FILE_PATH\\context-batch.bat \"%V\""
您不需要此"Icon"="%SystemRoot%\\System32\\shell32.dll,71"
行。它只会向您的上下文菜单添加一个图标,如下所示:
答案3
答案4
我在 Windows 10 上使用的替代解决方案是将脚本添加到路径变量中的一个文件夹中,然后当您在资源管理器中使用序列时:
ctrl + L - 开始在搜索栏中输入
输入:cmd,然后按 Enter - 在当前目录中启动 cmd
通过输入文件名来运行脚本