Aller au contenu

[LOGICIEL] [resolu] Ouvrir fichiers "parallèles" en un clic


Yangzebul

Messages recommandés

Bonjour,

vous n'auriez pas par hasard un petit script (même crade) qui permet d'ouvrir plusieurs fichiers provenant de plusieurs répertoires en même temps ?

Je m'explique, j'ai une arborescence à X branches ou chaque branche est nommée de manière identique et contient les mêmes (à peu de choses près) fichiers. Je dois à chaque fois que j'édite un fichier éditer les fichiers équivalents dans toutes les branches de l'arborescence.

J'ai environ 2000~3000 fichiers à traiter manuellement, et je risque de devoir faire plusieurs passes.

Pour pouvoir rester sain d'esprit je cherche donc un moyen d'intégrer dans le clic droit une commande qui m'ouvrirait mes X fichiers (nommés de manière identique mais dans des répertoires différents dont je connais le nom) simultanément. C-à-d en pseudo-code :

command(path:String):void{

  open(path); //branche1

  String path2 = path.replace("branche1", "branche2"); 
  open(path2);

  String path3 = path.replace("branche1", "branche3"); 
  open(path3);
  
  // etc...
}

Comme ça je ne passerai pas mon temps à naviguer entre mes répertoires et je réduirai les risques d'erreurs/oublis.

Le problème c'est que je connais absolument que dalle en vbs et autres outils de scripting windows. Donc si vous avez un truc du genre que je pourrait adapter, cela me serait super utile !

Merci.  :craint:

Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai trouvé la bonne syntaxe pour mon script (je hais le vbs,  c'est vraiment immonde) :

Set WshShell = WScript.CreateObject("WScript.Shell")
Set args = Wscript.Arguments

Dim editor
editor = """%programfiles%\Notepad++\notepad++.exe"""

Dim path1
Dim path2
path1 = args(0)
path2 = Replace(args(0), "doss1", "doss2")

WshShell.Run ( (editor & " " & path1) )
WshShell.Run ( (editor & " " & path2) )

Il fonctionne très bien si je le mets dans mon "sendTo" ou le lance depuis un invité de commande :

#~ wscript.exe C:\mult.vbs C:\sandbox\doss1ier\azerty.txt

Par contre je n'arrive pas à l'intégrer au menu contextuel ! :/

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\ouvrirMult]

[HKEY_CLASSES_ROOT\*\shell\ouvrirMult\command]
@="\"wscript.exe C:\\mult.vbs %1\""

J'obtiens toujours "accès refusé" j'ai essayé 15 000 syntaxes différentes sans succès...

"wscript.exe C:\mult.vbs %1"

"wscript.exe C:\mult.vbs "%1""

"wscript.exe C:\mult.vbs \"%1\""

"wscript.exe C:\mult.vbs" "%1"

"""wscript.exe C:\mult.vbs""" "%1"

"""wscript.exe C:\mult.vbs"""&"%1"

etc...

++++++++++++++++++++++++++++++++++++++++++++

C'est bon j'ai trouvé, c'était pourtant pas si compliqué (je me suis embrouillé avec les apostrophes dans la bases de registre et celles du fichier de registre que je dois échapper) :

wscript.exe C:\mult.vbs "%1"

ç-à-d

@="wscript.exe C:\\mult.vbs \"%1\""

Un grand merci à moi même.  :up:

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...