批处理:如何从双击文件中读取路径?

Batch: How to read a path from a double-clicked file?

我正在考虑将文件类型扩展名关联到批处理脚本 (.foo),因此当双击扩展名为 .foo 的文件时,将执行此脚本。关键是我不知道是否有办法告诉脚本 "executed" 文件的路径(即哪个变量,如果有的话,保存双击文件的路径)。

谢谢。

执行的文件作为第一个参数传递给脚本。 将显示一个简单的示例。 创建一个包含以下内容的批处理文件(例如 foo_command.cmd):

echo %* > %~dpn0.log

执行您想要的文件类型并将其连接到批处理文件。 这将写入一个名为 foo_command.log 的文件(在 foo_command.cmd 的目录中),其中包含传递给脚本的所有参数。你会看到,它是执行文件的完整路径。

一般情况下,脚本中的变量%1保存路径,默认没有设置其他变量。