2 votes

Donner le chemin de la clé USB insérée à un script.

J'aimerais lancer un script Perl donné à chaque fois que je connecte mon appareil photo à mon PC, afin que ce script télécharge toutes les photos qu'il contient. Mais comme la lettre de lecteur de l'appareil photo peut changer en fonction de ce qui est déjà connecté, j'ai besoin de passer cette lettre de lecteur comme argument au script.

Est-ce possible ?

2voto

James Mertz Points 390

Vous pourriez :

  1. Attribuez une lettre de lecteur différente, elle restera inchangée. Cela peut être fait dans devmgmt.msc

  2. Au lieu d'une lettre de lecteur, attribuez un chemin d'accès au système de fichiers (comme sous Linux).

    Par exemple, "C:\Users\Xavier\Desktop\USB key\" 代わりに "E:\" . Encore une fois, devmgmt.msc

  3. Exécuter mountvol , copier le \\?\Volume{blah-blah} remplacer le chemin d'accès ? avec une période . et utiliser que à la place.

    Par exemple, \\?\Volume{e095d6a2-a763-11dd-afc0-806d6172696f}\boot.ini dans mon ordinateur est le même que C:\boot.ini . (Je ne suis pas sûr que cela reste statique tout le temps - mais cela a fonctionné pour moi jusqu'à présent).

1voto

Alan Points 103

Comme je l'ai écrit dans votre autre question pour ce problème également USBDLM pourrait être la solution. Par exemple, il pourrait lancer votre outil de synchronisation de photos lors de la connexion ou tout autre script que vous souhaitez.

Vous pouvez utiliser le %DriveLetter% à transmettre à votre script. Voici un exemple de section de configuration :

[OnArrival1]
open=your_script.bat %DriveLetter%

Voir le la documentation pour plus de détails (la documentation Windows incluse est beaucoup plus lisible).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X