Запустите команду с перетаскиванием на командный файл
Я хочу перетащить файл в командный файл, чтобы выполнить на нем приведенную ниже команду. Как мне выполнить команду для удаленного файла?
PotreeConverter.exe <dropped file> -o C:/output -p index
3 ответа
Решение
path
файла, когда вы бросаете его на BAT
файл, будет возвращен как нормальный %1
аргумент.
так:
@echo off
PotreeConverter.exe "%~1" -o C:/output -p index
Ты можешь использовать %*
если вы уроните более 1 файла
Пример:
@echo off
for %%a in (%*) do echo [%%a] was dropped on me
pause
Следуя этому простому руководству.
Создать командный файл test.bat
с содержанием
@echo off
echo The full path of the file is: %1
pause
Перетащите на него любой файл, вы увидите, что %1
заменяется полным путем к этому файлу в кавычках.
Теперь вы знаете, как выполнить некоторую команду, которая принимает в качестве аргумента путь к файлу:
@echo off
some_command_that_takes_a_path_to_a_file %1
так что, если я хочу показать только имя файла вместо полного каталога, например, я хочу сделать «Имя файла - <имя файла>»