Comment lancer des applications GUI à partir du terminal

Anonim

Nous savons tous comment lancer des applications à partir de l'interface graphique en double-cliquant sur l'icône ou en cliquant sur l'application dans le Dock, et il existe de nombreuses façons de le faire, et elles sont toutes relativement rapides. Si vous passez un temps décent avec la ligne de commande, il est également agréable de pouvoir lancer des applications Mac directement à partir de là. De plus, le terminal a une bonne part d'applications qui s'exécutent en mode texte, mais vous vouliez peut-être modifier un fichier texte dans l'application TextWrangler de Mac OS X GUI plutôt que le nano ou le vim basé sur du texte.

Nous allons montrer comment lancer n'importe quelle application Mac graphique à partir de la ligne de commande de MacOS X, y compris comment ouvrir des fichiers spécifiques à partir de la ligne de commande avec une application graphique, et comment éditer et ouvrir ces fichiers avec un accès root si nécessaire.

Ouverture des applications Mac OS X à partir de la ligne de commande

La commande Terminal pour lancer les applications graphiques MacOS s'appelle à juste titre "ouvrir" et voici comment cela fonctionne le plus simplement :

open -a ApplicationName

Cela ouvrira l'application définie nommée "ApplicationName".

Mais open est bien plus puissant que cela. Si vous tapez simplement "ouvrir" à l'invite de commande, vous renverrez le fichier d'aide de base avec des détails sur la façon d'utiliser correctement la commande avec une variété d'indicateurs et de syntaxe.

Bien que la commande d'ouverture existe dans toutes les versions de Mac OS X, ses capacités varient quelque peu en fonction de la version de MacOS / Mac OS X exécutée par le Mac. Néanmoins, dans les versions modernes, voici ce que vous verrez :

$ open Utilisation : open Aide : Open ouvre des fichiers à partir d'un shell. Par défaut, ouvre chaque fichier à l'aide de l'application par défaut pour ce fichier. Si le fichier est sous la forme d'une URL, le fichier sera ouvert en tant qu'URL. Options : -a Ouvre avec l'application spécifiée. -b S'ouvre avec l'identifiant de groupe d'applications spécifié. -e Ouvre avec TextEdit. -t Ouvre avec l'éditeur de texte par défaut. -f Lit l'entrée à partir de l'entrée standard et s'ouvre avec TextEdit. -F --fresh Lance l'application fraîche, c'est-à-dire sans restaurer les fenêtres. L'état persistant enregistré est perdu, à l'exception des documents sans titre. -R, --reveal Sélectionne dans le Finder au lieu d'ouvrir. -W, --wait-apps Bloque jusqu'à ce que les applications utilisées soient fermées (même si elles étaient déjà en cours d'exécution). --args Tous les arguments restants sont passés dans argv à la fonction main() de l'application au lieu d'être ouverts. -n, --new Ouvre une nouvelle instance de l'application même si une est déjà en cours d'exécution. -j, --hide Lance l'application masquée. -g, --background Ne place pas l'application au premier plan.-h, --header Recherche dans les emplacements des fichiers d'en-tête les en-têtes correspondant aux noms de fichiers donnés et les ouvre.

En d'autres termes, un exemple de syntaxe de commande simple pourrait ressembler à ce qui suit, en ouvrant "ApplicationName" avec le fichier situé dans le chemin "/file/to/open" :

open -a NomApplication /file/to/open

Vous remarquerez que vous n'avez pas besoin du chemin complet vers le nom de l'application, mais vous auriez besoin du chemin complet vers un nom de fichier.

L'utilisation est probablement explicite pour ceux qui ont de l'expérience dans l'environnement de ligne de commande, mais pour ceux qui découvrent le Terminal, ne soyez pas trop confus, il est facile à utiliser et nous Je vais vous expliquer. Par exemple, si vous voulez éditer /etc/motd avec TextWrangler pour changer votre message du jour, mais que vous détestez les éditeurs de ligne de commande nano et vi, voici ce que vous taperiez :

$ open -a TextWrangler /etc/motd

Vous pouvez désormais modifier ces fichiers dans l'interface graphique familière. open est suffisamment intelligent pour savoir que lorsque vous appliquez l'indicateur -a, vous lancez une application, vous n'avez donc pas besoin de saisir son chemin complet. Évidemment, il aura toujours besoin du chemin d'accès complet au fichier que vous modifiez.

Il existe de nombreuses autres utilisations de la commande d'ouverture plutôt que de simplement éditer des fichiers texte, alors utilisez votre imagination et soyez créatif. open pourrait être particulièrement utile aux administrateurs système qui l'utilisent dans un script shell, peut-être pour lancer une application graphique spécifique à une heure planifiée.

Il convient également de noter que si vous lancez une application avec des espaces dans son nom, vous souhaiterez ajouter une barre oblique inverse après chaque mot, l'ouverture d'Adobe Photoshop CS ressemblera à ceci :

$ open -a Adobe\ Photoshop\ CS

Lancement des applications GUI en tant que root à partir de la ligne de commande

Vous pouvez même ouvrir des fichiers avec sudo en utilisant la commande open si vous avez besoin de modifier un fichier en tant que root, par exemple :

sudo open -a TextEdit /tmp/magicfile

Cela lancera le fichier cible dans l'application souhaitée en tant qu'utilisateur root, donnant tous les privilèges root pour éditer et modifier le fichier, ce qui est très utile pour éditer de nombreux fichiers système. Bien sûr, ne modifiez aucun fichier système si vous ne savez pas ce que vous faites.

Création d'alias de shell pour les applications GUI fréquemment lancées

Donc, c'est un peu pénible de taper une commande complète à plusieurs reprises, ou de taper tout cela encore et encore, n'est-ce pas ? Eh bien, facilitons les choses en attribuant un alias à une application qui est fréquemment lancée. Nous prendrons l'application Adobe Photoshop susmentionnée comme exemple, car le nom du fichier est long, alors voici comment nous allons procéder avec le shell Bash par défaut de Mac OS X :

Lancez d'abord le profil ou .bash_profile dans un éditeur de texte :

$ nano .profile

ou

$ open -e .profile

En ignorant tout ce qui peut se trouver dans ce fichier (il peut aussi être vide), ajoutez ce qui suit à une nouvelle ligne :

"

alias photoshop=open -a Adobe\ Photoshop\ CS"

Cela crée un alias, de sorte que la commande "open -a Adobe\ Photoshop CS" est maintenant raccourcie en simplement "photoshop". Enregistrez .profile et vous êtes sur la bonne voie ! Vous pouvez utiliser la commande alias en conjonction avec open pour pratiquement n'importe quoi, assurez-vous simplement de choisir un alias pour une commande qui n'existe pas déjà.

La commande open est vraiment pratique comme vous pouvez le constater, si vous en avez d'autres utilisations intéressantes sous Mac OS X, assurez-vous de nous le faire savoir dans les commentaires.

Comment lancer des applications GUI à partir du terminal