¿Por qué no puedo abrir fácilmente los navegadores web desde la aplicación de terminal?

1

Para ejecutar Chrome desde la aplicación de Terminal, tengo que hacer

open -a "Google Chrome" index.html

en lugar de solo algo como "chrome index.html".

Lo mismo parece ser cierto para Firefox.

No es porque no pueda abrir ninguna aplicación GUI desde la línea de comandos. Por ejemplo, puedo hacer mate . para abrir TextMate.

¿Cuál es la razón para que los navegadores web no tengan un comando como "chrome index.html"?

    
pregunta Andrew Grimm 30.03.2015 - 00:39

2 respuestas

2

Para abrir una aplicación desde el terminal, debe estar en una de las rutas de su variable de entorno $PATH .

Por defecto, /Application/ donde se encuentra Chrome no se encuentra en tu ruta. Por lo tanto, no puede iniciar una aplicación sin dar la ruta completa a su aplicación.

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome http://google.com

Funcionará.

    
respondido por el Matthieu Riegler 30.03.2015 - 01:08
4

Probablemente sea seguro decir que la mayoría de los usuarios de Mac no abren las aplicaciones GUI a través de la CLI, razón por la cual la mayoría de las aplicaciones GUI no incluyen el soporte de la CLI como lo hace TextMate. En otras palabras, TextMate en realidad incluye un ejecutable binario llamado mate que se instala en $PATH , por lo que no es necesario que se inicie con el comando open como abrir una aplicación GUI que no incluya ese tipo de Soporte CLI.

Si desea emular ese comportamiento, cree un script llamado chrome ubicado en $PATH , generalmente /usr/local/bin/ para algo como esto.

Ejemplo:

#!/bin/bash

if [ -n "$1" ]; then
    open -a "Google Chrome" "$1"
else
    open -a "Google Chrome"
fi

Guarde el código anterior en un archivo de texto plano denominado chrome y hágalo ejecutable mediante:

chmod +x chrome

Luego, puede iniciar Google Chrome a través de CLI mediante chrome o chrome URL , donde URL tiene el formato correcto, si no es solo un nombre de archivo en el $PWD .

    
respondido por el user3439894 30.03.2015 - 01:20

Lea otras preguntas en las etiquetas