Я хотел бы запустить данный скрипт Perl каждый раз, когда я подключаю свою камеру к моему ПК, так, чтобы этот сценарий загрузил все фотографии на нем. Но поскольку буква диска для камеры может измениться в зависимости от того, что уже соединено, я должен передать эту букву диска как аргумент сценарию.
Действительно ли это возможно?
Как я записал в Вашем другом вопросе для этой проблемы, также USBDLM мог быть решением. Например, это могло запустить Ваш фото инструмент синхронизации на подключении или любом сценарии, который Вы любите.
Можно использовать %DriveLetter переменную %, которая будет передана сценарию. Вот раздел конфигурации в качестве примера:
[OnArrival1]
open=your_script.bat %DriveLetter%
См. документацию для деталей (включенная документация по Windows намного более читаема).
Вы могли:
Присвойте другую букву диска, затем она останется такой же. В этом можно выполнить devmgmt.msc
Вместо буквы диска присвойте путь файловой системы (как в Linux).
Например, "C:\Users\Xavier\Desktop\USB key\"
вместо "E:\"
. Снова, devmgmt.msc
Выполненный mountvol
, скопируйте \\?\Volume{blah-blah}
путь, замените ?
с периодом .
и используйте тот путь вместо этого.
Например, \\?\Volume{e095d6a2-a763-11dd-afc0-806d6172696f}\boot.ini
в моем компьютере совпадает с C:\boot.ini
. (Не уверенный, если это остается статичным все время - но это работало на меня до сих пор.)