使用通配符从 CMD 打开文件夹

使用通配符从 CMD 打开文件夹

我正在使用 FileMaker Pro,并且希望能够在 Windows 资源管理器中打开一个文件夹,尽管文件夹路径尚未 100% 完整。

我们有一个 Contracts 驱动器,我们的工作保存在其中 = X:\,该文件夹中有大约 100 个文件夹,所有文件夹都以唯一编号开头,但编号后面还有工作描述。我想从 FMP 发送命令,打开给定编号的文件夹(例如 X:\1234*)。

从 FMP 我可以使用可以运行命令提示符的发送事件函数。它还可以运行 BAT 文件。我现在有这个:

"cmd /c explorer Y:" & Jobs::JobNumber & "*"

引号中的部分是文字,外面返回存储在字段中的值

但这只会在“我的电脑”中打开资源管理器。所以我需要一种方法来根据作业编号找到完整的文件夹路径,然后打开该完整的文件夹路径。

任何帮助都非常感谢。谢谢

答案1

cmd它由单个命令来解释通配符,并且explorer不这样做。当使用无效目录名称启动时,explorer将从默认目录启动,正如您所观察到的。

您可以cmd使用语句来扩展通配符for,如下所示:

for /d %d in (X:\1234*) do explorer %d

因此,您的运行字符串需要使用类似以下内容来创建:

"cmd /c for %d in (Y:\" & Jobs::JobNumber & "*) do explorer %d"

我不知道 FileMaker Pro 如何调度系统命令,但您可能需要将符号加倍%,就像在批处理文件中一样。如果展开的目录名称中有空格,则需要在参数周围生成引号explorer

答案2

在cmd中,最简单的方法如下:

首先,使用 CD 导航到所需文件夹。您可以使用TAB自动完成名称,如果有更多匹配项,请多次按下该按钮,直到找到正确的名称。

到达那里后,您只需键入以下命令即可从当前路径打开资源管理器窗口:

start .

因此,对于您的脚本,它将会是这样的:

x:
cd & Jobs::JobNumber
start .

同样,如果您在资源管理器中并想要从该位置启动命令提示符,请转到地址栏,而不是在地址栏中,只需键入 cmd 并按 Enter 即可。

相关内容