Respuestas:
Abra la Terminal, escriba sh /path/to/file
y presione Intro.
Más rápido es escribir sh
y un espacio y luego arrastrar el archivo a la ventana y soltar el icono en cualquier lugar de la ventana.
shell shell_script
que se ignora la línea shebang. El shell lee la primera línea como un comentario.
sh /path/to/file
diferencia semánticamente de la alternativa /path/to/file.sh
?
Alternativamente, también podrías hacer
cd /directory/with/executable
chmod +x executable # only required if your file is not already executable
./executable
que también ejecutará el archivo ejecutable con su shell especificado (si se especifica en el shebang #!/bin/(shell)
chmod u+x myfile.sh
cp myfile.sh /usr/local/bin
edite ~/.bash_profile
y agregue la siguiente línea:
alias myfile=./myfile.sh
ejecute la siguiente línea de comando:
source ~/.bash_profile
entonces podrá ejecutar su archivo como un programa
$ myfile
#~/bin/sh
, mientras que en OSX
el script debe tener una .sh
extensión y una alias
para cada uno de ellos. : -O
Siga estos pasos para ejecutar los archivos de script:
Haga clic derecho en el archivo .sh.
Pase el ratón sobre Abrir con .
Elija Otro ... .
Deberías estar en la carpeta Aplicaciones . Abra la carpeta Utilidades y seleccione Terminal.app.
Si no puede seleccionar Terminal.app, cambie las aplicaciones habilitadas de Aplicaciones recomendadas a Todas las aplicaciones . Está en la parte inferior de la ventana.
Si desea abrir cada .sh
archivo con Terminal.app, marque Siempre abrir con .
Presione el botón Abrir en la esquina inferior derecha de la ventana.
La razón por la que no funciona después de la descarga es que los permisos de archivo no lo permiten. Para habilitar los permisos de ejecución, abra Terminal y escriba
chmod 755 /path/to/script
. En lugar de escribir la ruta completa, puede arrastrar el script a la ventana Terminal desde Finder. Luego, para ejecutar, simplemente ingrese
/path/to/script
. Nuevamente, puede arrastrar y soltar el archivo en la ventana Terminal. Esta sintaxis debe ejecutar el script utilizando el shell correcto como se define en la primera línea del script.
sh
denota un script de shell que no "ejecuta el script en este shell".