/ / Bash no ejecutará mi script de shell simple [duplicado] - bash, shell, cp

Bash no ejecutará mi script de shell simple [duplicado] - bash, shell, cp

Cuando ejecutoinit-hooks yo obtengo

bash: init-hooks: comando-no encontrado

Aquí están los contenidos de los ganchos de inicio:

#!/bin/bash
set -e
printf "ncopying hooksnn"
cp ./hooks/* ../../.git/hooks

Cuando ejecuto cp ./hooks/* ../../.git/hooks desde bash directamente la ejecución es exitosa. (note que este es el mismo comando que el que está en el script)

La prueba de los archivos está en el directorio y los resultados de la ejecución: enter image description here

¿Por qué mi script se comporta de manera diferente al comando / por qué no se encuentra mi script?

Respuestas

2 para la respuesta № 1

En los sistemas Linux (donde bash viene de) el directorio actual generalmente no se incluye en la ruta por razones de seguridad.

correr echo $PATH para verificar qué directorios se usan para buscar ejecutables cuando se proporcionan en la línea de comandos sin una ruta. El directorio actual (.) no debería estar allí.

Ejecutar el script como ./init-hooks y bash lo encontrara


0 para la respuesta № 2

Suugest para ejecutarlo de la siguiente manera

./init_hooks

o poner el nombre de archivo completo.

Asegúrate de hacer el script ejecutable

chmod + x ./init_hooks