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


1

我正在使用FileMaker Pro,并希望能够在Windows资源管理器中打开一个文件夹,给定文件夹路径不是100%完成。

我们有一个合同驱动器,我们的工作得到保存= X:\在该文件夹中有100个左右的文件夹,所有文件夹都以唯一编号开头,但在编号后面还有一个职位描述。我想从FMP发送命令,打开刚给出数字的文件夹(例如X:\ 1234 *)。

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

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

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

但这只是在我的电脑上打开资源管理器。所以我需要一种方法来找到给定作业号的完整文件夹路径,然后打开该完整文件夹路径。

任何帮助都是极好的。谢谢

Answers:


3

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参数生成引号。


1

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

首先,使用CD导航到所需的文件夹。您可以使用TAB自动填充名称,如果有更多匹配项,则按多次,直到获得正确的名称。

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

start .

因此,对于您的脚本,这将使它像这样:

x:
cd & Jobs::JobNumber
start .

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.