Primero estoy usando Mac.
A continuación, necesito ejecutar este "file.sh", lo llamaremos. Cada vez que necesito ejecutarlo, tengo que abrir Terminal y escribir:
cd /Users/Jacob/Documents/folderWithFileInIt
bash file.sh
Esto está bien, pero creo que sería mucho más rápido si hago que el archivo se ejecute con doble clic, ¿no le parece?
Entonces mi pregunta es, ¿cómo hago que este archivo sea ejecutable con doble clic?
Mis ideas fueron:
a) escriba algo como chmod en la terminal y cambie los permisos?
b) hacer un archivo, poner el código que escribí arriba ^ y luego hacer que ese archivo sea ejecutable?
c) hacer una automatización de alguna manera para hacer esto?
¿Cuál es la mejor manera, o hay una mejor manera? También explique todo lo que pueda, soy nuevo en Terminal. Gracias.
bash
macos
terminal
executable
Jacob
fuente
fuente
Respuestas:
Por defecto, los
*.sh
archivos se abren en un editor de texto (Xcode o TextEdit). Para crear un script de shell que se ejecutará en Terminal cuando lo abra, asígnele el nombre con la extensión "comando", por ejemplo,file.command
. Por defecto, estos se envían a Terminal, que ejecutará el archivo como un script de shell.También deberá asegurarse de que el archivo sea ejecutable, por ejemplo:
Sin esto, Terminal se negará a ejecutarlo.
Tenga en cuenta que el script no tiene que comenzar con un
#!
prefijo en este escenario específico, porque Terminal se encarga específicamente de ejecutarlo con su shell predeterminado. (Por supuesto, puede agregar un#!
línea si desea personalizar qué shell se usa o si desea asegurarse de que puede ejecutarlo desde la línea de comando mientras usa un shell diferente).También tenga en cuenta que Terminal ejecuta el script de shell sin cambiar el directorio de trabajo. Tendrá que comenzar su script con un
cd
comando si realmente lo necesita para ejecutarse con un directorio de trabajo en particular.fuente
cd "`dirname "$0"`"
para establecer el directorio de trabajo actual en el directorio donde se encuentra su skript de shell.open -n ...
comando. Funciona, pero cada vez que se abre la ventana de Terminal y me muestra "[Proceso completado]". ¿Es posible evitar la apariencia de la ventana de Terminal de alguna manera?Elimine la extensión por completo y luego haga doble clic en ella. La mayoría de los scripts de shell del sistema son así. Mientras tenga un shebang , funcionará.
fuente
Puedes decirle a Finder que abra el
.sh
archivo en la Terminal:Esto tendrá exactamente el mismo efecto que renombrarlo,
.command
excepto que ... no tiene que cambiarle el nombre :)fuente
El nombre del archivo debe aparecer entre comillas dobles. Como estoy usando Mac-> En mi caso, el contenido del archivo por lotes es
cd / Users / yourName / Documents / SeleniumServer
java -jar selenium-server-standalone-3.3.1.jar -role hub
Funcionará seguro
fuente
puedes cambiar el archivo ejecutable usando
chmod
estoy usa este comando para ejecutar
fuente