Je vois comment lancer beaucoup d'autres programmes à partir d'un fichier batch, mais je ne trouve pas de commande comme open
sur Mac OS X. outil existe sur Windows? Powershell ou un appel d'API Windows à partir d'un exécutable fonctionnerait également.
Dans Windows, vous pouvez ouvrir l'Explorateur avec la commande suivante:
C:\Users\Leniel>start %windir%\Explorer.exe
Si vous souhaitez qu'il ouvre un dossier spécifique, procédez comme suit:
C:\Users\Leniel>start %windir%\Explorer.exe "C:\Users\Leniel\Desktop"
L'équivalent direct de open
d'OS X est start
dans cmd
.
start foo.txt
lancerait le Bloc-notes (ou tout autre éditeur de texte que vous utilisez),
start http://example.com
lancerait votre navigateur,
start \someDirectory
lancera Explorer, etc.
Il faut faire attention avec les arguments entre guillemets, car start
interprétera le premier argument entre guillemets comme le titre de la fenêtre à utiliser, donc quelque chose comme
start "C:\Users\Me\Folder with spaces\somedocument.docx"
ne fonctionnera pas comme prévu. Au lieu de cela, ajoutez un argument vide entre guillemets dans ce cas:
start "" "C:\Users\Me\Folder with spaces\somedocument.docx"
Notez que start
n'est pas un programme séparé mais un shell intégré. Donc, pour l'invoquer à partir d'un programme externe, vous devez utiliser quelque chose comme
cmd /c start ...
L'équivalent dans PowerShell est soit Start-Process
ou Invoke-Item
. Ce dernier est probablement mieux adapté à cette tâche.
Invoke-Item foo.txt # launches your text editor with foo.txt
Invoke-Item . # starts Explorer in the current directory
Quant à l'API Windows, vous recherchez ShellExecute
avec le verbe open
.