Ejecutar script en ubuntu

eva evammg en gmail.com
Sab Jun 16 08:58:58 BST 2007


hola,
estaba leyendo como cada día la lista de ubuntu.
me parecio muy útil lo que dijiste de hacer un programita en C.
he seguido los pasos que das y resulta que cuando voy a hacer doble
click en el ejecutable, este no se ejecuta.
sin embargo, si lo ejecuto desde anjuta, si que se ejecuta.
¿esto por qué debe ser?

un saludo.
----------------------------------------------------
From: "Raul Veleiro A \(en Yahoo\)" <raul_veleiro en yahoo.es>
Subject: Re: Ejecutar script en ubuntu

Puede que el fichero "exec" no tenga permisos de ejecución. Aunque el
gcc lo debería crear bien. Al hacer "ls -lrta /home/raul/Desktop"
desde un terminal, me aparecen los ficheros con los siguientes
permisos:

-rwxr-xr-x 1 raul raul    6674 2007-06-14 21:56 exec
-rw-r--r--   1 raul raul        56 2007-06-14 22:19  exec.c

Para el fichero "exec" los permisos están en 755. Si no está así los
debes cambiar con "chmod 755 exec".

Compáralos con los tuyos y me cuentas.

Otra cosa que puede estar ocurriendo es que se ejecute y no nos demos
cuenta. Cambia el programa a ejecutar, en vez de ser un script .sh,
que inicie una aplicación desde el terminal, por ejemplo xclock (que
lo único que hace es abrir una ventana con un reloj analógico en el
entorno gráfico X11).

Algo como esto:

main(void)
{
system("xclock&");
}

OJO: Le ponemos "&" al final de la línea del comando para que lo
ejecute en background y al finalizar el proceso "exec" no nos cierre
la aplicación que hemos iniciado como proceso hijo -el reloj !!!!

Bueno a ver si hay suerte...

------------------------------------------------------
From: "eva" <evammg en gmail.com>
 Subject: Re: Ejecutar script en ubuntu


Los permisos están bien. Ya funciona, pero ha sido haciendo lo siguiente:
 he hecho lo mismo que ejecutaba el anjuta al compilar y construir,
así que puse:
 $ gcc -g -pg -c exec.c -o exec.o
 $ gcc -g -pg exec.c -o exec
 $ ./exec

 y ya funciona el reloj, solamente. hice lo mismo luego con un script
que contiene:

 #include<stdio.h>

 int main(void){
     system("/home/evachan/Desktop/script.sh");
 }

 y desde modo gráfico no permite ejecutarse, sin embargo si lo ejecuto
desde un terminal, si que se ejecuta:
 $ ./01

 así que, ¿qué piensas de todo esto?

 saludos.

pd: pensaba que esto iba a solucionarse antes y que como soy una
novatilla estaría cometiendo algún error tonto..
-- 
Ubuntu User # 15094



Más información sobre la lista de distribución ubuntu-es