Откройте папку из CMD, используя подстановочный знак
Я использую FileMaker Pro и хотел бы иметь возможность открыть папку в проводнике Windows, если путь к папке не заполнен на 100%.
У нас есть диск Contracts, на котором наши работы сохраняются = X:\. В этой папке находится около 100 папок, которые начинаются с уникального номера, но также имеют описание работы после номера. Я хочу отправить команду из FMP, которая открывает папку только с указанным номером (например, X:\1234*).
Из FMP я могу использовать функцию отправки события, которая может запускать командную строку. Он также может запускать BAT-файлы. У меня есть это на данный момент:
"cmd /c explorer Y:" & Jobs::JobNumber & "*"
(части в кавычках являются буквальными, а за пределами возвращает значение, хранящееся в поле)
но это просто открывает проводник на моем компьютере. Поэтому мне нужен способ найти полный путь к папке по номеру задания, а затем открыть этот полный путь к папке.
Любая помощь будет потрясающей. Спасибо
2 ответа
В 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
параметр.
В cmd самый простой способ сделать это следующим образом:
Сначала используйте CD, чтобы перейти к нужной папке. Вы можете использовать TAB для автозаполнения имен и нажимать его несколько раз, если есть еще совпадения, пока вы не получите правильное.
Оказавшись там, вы можете просто ввести следующую команду, чтобы открыть окно проводника с текущего пути:
start .
Так что в вашем случае с вашим сценарием это будет выглядеть примерно так:
x:
cd & Jobs::JobNumber
start .
Аналогично, если вы находитесь в проводнике и хотите запустить командную строку из этого места, перейдите в адресную строку и вместо адресной строки просто введите cmd и нажмите ввод.