skip to Main Content

Cómo iniciar aplicaciones GUI desde la terminal

Terminal

Todos sabemos cómo iniciar aplicaciones desde la GUI con un doble clic en el icono o haciendo clic en la aplicación en el Dock, y hay numerosas formas de hacerlo, y todas son relativamente rápidas. Sin embargo, si pasa una cantidad de tiempo decente con la línea de comandos, es bueno poder iniciar aplicaciones de Mac directamente desde allí también. Además, la Terminal tiene una buena cantidad de aplicaciones que se ejecutan en modo basado en texto, pero tal vez quisiera editar un archivo de texto en la aplicación de GUI de OS X TextWrangler en lugar de nano o vim basados ​​en texto.

Vamos a demostrar cómo iniciar cualquier aplicación gráfica de Mac desde la línea de comandos de OS X, incluido cómo abrir archivos específicos desde la línea de comandos con una aplicación GUI, y cómo editar y abrir esos archivos con acceso de root si es necesario. .

Abrir aplicaciones de Mac OS X desde la línea de comandos

El comando de Terminal para iniciar aplicaciones de interfaz gráfica de usuario de OS X se llama apropiadamente ‘abrir’ y así es como funciona de la manera más simple:

open -a ApplicationName

Eso abrirá la aplicación definida llamada “ApplicationName”.

Pero abierto es mucho más poderoso que eso. Si simplemente escribe ‘abrir’ en el símbolo del sistema, devolverá el archivo de ayuda básico con detalles sobre cómo usar correctamente el comando con una variedad de indicadores y sintaxis. Si bien el comando de apertura existe en todas las versiones de Mac OS X, las capacidades varían un poco según la versión de OS X que esté ejecutando Mac. No obstante, en las versiones modernas, esto es lo que verá:

$ open
Usage: open [-e] [-t] [-f] [-W] [-R] [-n] [-g] [-h] [-b ] [-a ] [filenames] [--args arguments]Help: Open opens files from a shell.
By default, opens each file using the default application for that file.
If the file is in the form of a URL, the file will be opened as a URL.
Options:
-a Opens with the specified application.
-b Opens with the specified application bundle identifier.
-e Opens with TextEdit.
-t Opens with default text editor.
-f Reads input from standard input and opens with TextEdit.
-F --fresh Launches the app fresh, that is, without restoring windows. Saved persistent state is lost, excluding Untitled documents.
-R, --reveal Selects in the Finder instead of opening.
-W, --wait-apps Blocks until the used applications are closed (even if they were already running).
--args All remaining arguments are passed in argv to the application's main() function instead of opened.
-n, --new Open a new instance of the application even if one is already running.
-j, --hide Launches the app hidden.
-g, --background Does not bring the application to the foreground.
-h, --header Searches header file locations for headers matching the given filenames, and opens them.

En otras palabras, la sintaxis de un comando simple de ejemplo podría tener el siguiente aspecto, abriendo “ApplicationName” con el archivo ubicado en la ruta ‘/ file / to / open’:

open -a ApplicationName /file/to/open

Notará que no necesita la ruta completa al nombre de la aplicación, pero necesitaría la ruta completa a un nombre de archivo.

El uso probablemente se explica por sí mismo para aquellos que tienen experiencia en el entorno de la línea de comandos, pero para aquellos que son nuevos en la Terminal, no se confundan demasiado, es fácil de usar y se lo explicaremos. Por ejemplo, si desea editar / etc / motd con TextWrangler para cambiar su Mensaje del día, pero odia los editores de línea de comando nano y vi, esto es lo que debe escribir:

$ open -a TextWrangler /etc/motd

Ahora puede editar estos archivos en la GUI familiar. open es lo suficientemente inteligente como para saber que cuando aplica la marca -a, está iniciando una aplicación, por lo que no necesita escribir su ruta completa. Obviamente, aún necesitará la ruta completa al archivo que está editando.

Hay muchos otros usos para el comando de apertura en lugar de simplemente editar archivos de texto, así que use su imaginación y sea creativo. open podría ser particularmente útil para los administradores de sistemas que lo utilizan en un script de shell, tal vez para iniciar una aplicación GUI específica a una hora programada.

También vale la pena señalar que si está iniciando una aplicación con espacios en su nombre, querrá agregar una barra invertida después de cada palabra, abrir Adobe Photoshop CS se vería así:

$ open -a Adobe Photoshop CS

Lanzamiento de aplicaciones GUI como root desde la línea de comandos

Incluso puede abrir archivos con sudo usando el comando abrir si necesita editar un archivo como root, por ejemplo:

sudo open -a TextEdit /tmp/magicfile

Esto lanzará el archivo de destino en la aplicación deseada como usuario root, otorgando privilegios de root completos para editar y modificar el archivo, lo cual es muy útil para editar muchos archivos del sistema. Por supuesto, no modifique ningún archivo del sistema si no sabe lo que está haciendo.

Creación de alias de shell para aplicaciones GUI que se inician con frecuencia

Así que es una especie de dolor en el trasero escribir un comando completo repetidamente, o escribir todo eso una y otra vez, ¿verdad? Bueno, hagámoslo más fácil asignando un alias a una aplicación que se inicia con frecuencia. Tomaremos la aplicación Adobe Photoshop antes mencionada como ejemplo, ya que el nombre del archivo es largo, así que así es como lo haremos con el shell Bash predeterminado de Mac OS X:

Primero inicie el perfil o .bash_profile en un editor de texto:

$ nano .profile

o

$ open -e .profile

Ignorando cualquier otra cosa que pueda haber en este archivo (también podría estar vacío), agregue lo siguiente a una nueva línea:

alias photoshop="open -a Adobe Photoshop CS"

Esto crea un alias, de modo que el comando “abrir -a Adobe Photoshop CS” ahora se abrevia a simplemente “photoshop”. Guarde .profile, ¡y estará en camino! Puede usar el comando alias junto con open para prácticamente cualquier cosa, solo asegúrese de elegir un alias para un comando que aún no existe.

El comando abrir es realmente útil, como puede ver, si tiene otros usos excelentes para él en OS X, asegúrese de informarnos en los comentarios.

Back To Top