Permiso denegado al ejecutar scripts .sh

./geany_run_script.sh: 5: ./geany_run_script.sh: ./Area_circumference: Permission denied

program exited with code: 126. Este problema siempre ocurre cuando intento ejecutar mi código. ¿Cuál podría ser la solución?

Aquí hay un enlace que explica sobre Cambiar el permiso (y la propiedad)del archivo

Si desea omitir estos (por ahora, por supuesto), puede crear un directorio / carpeta en su directorio de inicio de usuario y trabajar en su C programas (u otros) allí.


Puede abrir la terminal (presione Ctrl + Alt + T) y cd al directorio de destino:

cd /path/to/target

Para dar permiso de ejecución al archivo "the_file_name" (si el sistema de archivos lo permite con los derechos de RW):

chmod +x the_file_name

Necesitas dar execute y read permiso. Sigue esto:

chmod u+r+x filename.sh./filename.sh

Cuando creamos un nuevo archivo de script, por defecto tiene permiso de lectura y escritura.Pero si queremos ejecutarlos, entonces debemos dar permiso de ejecución como se muestra arriba.

El bit de ejecución por sí solo no es suficiente para los scripts de shell, uno debe poder leer el archivo también para ejecutarlo (a diferencia de los binarios que solo necesitan el bit de permiso de ejecución)

Abra su aplicación de terminal presionando CTRL + ALT + T o con el acceso directo apropiado en el entorno gráfico (como Terminal o xTerm).
En la ventana uniforme que aparece en la pantalla, verá un carácter parpadeante, es el terminal cursor: simplemente haga clic en la ventana y escriba para ingresar texto (generalmente comandos) y presione ENTER para confirmar la entrada.
Antes del cursor, siempre se muestra su posición actual en el sistema de archivos desde el root directory ("/") y su hogar (donde se encuentran sus archivos personales) se llama"~".
Para cambiar el uso de directorio / carpeta cd EXISTENTFOLDER (reemplace EXISTENTFOLDER con el nombre de la carpeta); si se siente perdido, simplemente escriba cd para volver a su directorio de inicio en un abrir y cerrar de ojos!
Ahora resolvamos su problema:

  1. Utilice el cd comando para encontrar el directorio con su código fuente. Utilizar TAB ayudar. Si ejecuta ls -lh, verá una lista de posibles rutas a seguir y archivos para ejecutar.

  2. Cuando encuentres el archivo bloqueado, ejecuta chmod +x FILENAME (reemplace FILENAME con el nombre de su archivo de código fuente).

  3. Si tienes varios archivos bloqueados, ejecuta chmod +x * para desbloquear todos los archivos del directorio actual. Nunca chmod +x archivos peligrosos o inseguros.

  4. Ejecutar ./FILENAME YOUREVENTUALARGUMENTS para ejecutar el archivo ejecutable.

  5. Recuerde que si su programa compilado intenta leer / escribir fuera de su directorio de inicio, deberá ejecutarlo como root mediante sudo ./FILENAME YOUREVENTUALARGUMENTS.

Si desea tener un manual para ejecutar un comando man COMMAND (reemplace el COMANDO con el nombre exacto del comando, Linux distingue entre mayúsculas y minúsculas).

Algunas conchas tienen un Open terminal here comando para simplificar su vida, búsquelo en el futuro y recuerde que el shell de comandos puede ser su mejor amigo, si lo usa bien. :- D

Es todo. Si necesita más ayuda, comente aquí.
Si te estoy ayudando, presiona la flecha hacia ARRIBA a la izquierda; si resuelves, marca esta respuesta como la mejor respuesta.

Que tengas una buena experiencia en Linux y Ubuntu.

El error ‘Permiso denegado’ se produce solo si no tiene suficientes privilegios para acceder a ese archivo.

Cómo puedo cambiar los permisos

¿Dónde hago eso, por favor, dame una oportunidad?

Cuando hago eso, me dice este chmod: no se puede acceder `geany_run_script.sh’: No existe tal archivo o directorio. Debo ejecutarlo desde la terminal o qué?

posible duplicado de ¿Cómo ejecuto archivos .sh en la Terminal?