Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Hola.

Os traigo un truco. Normalmente cuando creas un ejecutable en gambas o en C, para poderlo ejecutar le tienes que poner en el terminal lo siguiente, (en la carpeta que este el ejecutable):
$.\archivo_ejecutable

¿estais cansados de ponerle el .\ y de ejecutarlo en su carpeta???
 Si es asi os digo un pequeño truco que he aprendido en el curso de programador de sistemas

Se trata de crear una nueva carpeta en vuestro usuario, llamada: bin.
Osea, si mi usuario es "uno", pues creas:
$mkdir /home/uno/bin

¿ok?

Ahora sales de tu cuenta o reinicias el ordenador.

Una vez echo esto (es para que coja ese cambio el sistema operativo), mueves el ejecutable , a la carpeta "bin".

Y ya esta, ya lo puedes ejecutar desde cualquier carpeta poniendo:
$archivo_ejecutable

como cualquier comando de gnu/linux....       


Saludos...

Nota:
Si quereis saber el porque, echarle un vistazo a esta entrada: https://sites.google.com/site/fpopr...les-del-sistema
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Domingo, 13 Marzo 2011, 06:12; editado 1 vez 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
perdona, pero para que eso funcione tienes que modificar el PATH y si quieres que ocurra de forma automática al iniciar el ordenador tendrás que poner esa modificacón en bashrc si usas bash o en profile si usas otra o en /etc/profile si lo quieres para todos (cosa absurda en este caso pero bueno)

Pero ya puestos a contar cositas hay otra cosita interesante. Como convertir una aplicación gambas en un demonio.

Como sabeis las aplicaciones las corren usuarios. El usuario se logea y luego ejecuta aplicaciones que funcionan de acuerdo al conjunto de privilegios que ese usuario tiene. Cuando el usuario se va los procesos que tenga lanzados se cierran.

Si lo convertis en un demonio entonces ya no depende de ningún usuario. Es el sistema quien lo inicia, lo reinicia o lo para. Para ello desde el punto de vista de gambas lo único que tenemos que hacer es que pongamos la propiedad application.daemon a true.

Si hacemos esto el directorio principal pasa a ser / en vez del user.home (porque ya no depende de ningún usuario). Además cualquier relación de parentesco con cualquier proceso del usuario se rompe. Ya no depende de usuario alguno.

La otra cosa a realizar es configurar linux para que se inicie de forma automática metiendo un enlace en /etc/init.d cosa que es bastante simple y que quizá un día de estos explique como funciona, pero vamos que hay mucha literatura por ahí de como hacer esto.
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Soplo:
Citar:

perdona, pero para que eso funcione tienes que modificar el PATH y si quieres que ocurra de forma automática al iniciar el ordenador tendrás que poner esa modificacón en bashrc si usas bash o en profile si usas otra o en /etc/profile si lo quieres para todos (cosa absurda en este caso pero bueno)


En Ubuntu, no hace falta, el archivo .profile ya viene con esa modificacion "de fábrica":

99-20profile

En debian, no se como vendrá...

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Domingo, 13 Marzo 2011, 07:20; editado 1 vez 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Julio, esto es de las primeras cosas que hacíamos en los tiempos de las consolas, que entonces era un peñazo de verdad lo del dichoso punto. La manera no es esa, es la que Soplo te dice.
Incluye en tu .profile lo siguiente

PATH="./:$PATH"

Con ello añades el dichoso ./ (que como todo el mundo sabe quiere decir "aquí donde estoy") en el camino de búsqueda de los ejecutables. De hecho al hacerlo así tienes dos ventajas: Te vale para cualquier directorio estés donde estés, no sólo para el /home/user/bin, y le das preferencia a los tuyos antes que a los del sistema, si es que se llaman igual.

Los demonios de Soplo, conejudos. Tomo nota y agradezco... Por cierto aquello de los rc de arranque -con sus S y sus K- y sus 6 niveles de levantar el sistema  y demás, hoy día es esoterismo puro, me temo. Los nuevos usuarios me parece que no sospechan siquiera lo que se puede llegar a personalizar y configurar un sistema en ese aspecto.


Suerte.
 



 
última edición por shordi el Domingo, 13 Marzo 2011, 10:40; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Shordi:

Citar:
Te vale para cualquier directorio estés donde estés,no sólo para el /home/user/bin


Estas equivocado, si usas Ubuntu, el fichero .profile , ya lo tiene "predefinido". Solo hace falta crear la carpeta /bin/ en tu usuario, y grabar alli todos los ejecutables que generes.. Y tendras acceso al programa desde cualquier directorio.

Probarlo, como os digo, y os funciona....

Saludos

Nota: Me juego unas cervecitas, a que llevo razón...          
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Domingo, 13 Marzo 2011, 12:29; editado 1 vez 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Que sí, Julio, que llevas razón. Pero eso te obliga a copiar los ejecutables en tales carpetas... ¿Y si tu ejecutable busca algo en la carpeta donde está? es algo común a mitad de un desarrollo. ¿Y si no estás en tu carpeta, sino en otro sitio?

Prueba lo que te digo y verás como todo lo que teclees en la línea de comandos te lo ejecuta si está en la carpeta donde estés. Sin necesidad de copiarlo a ningún sitio.

Suerte.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
jsbsan escribió: [Ver mensaje]
debian, no se como vendrá...

Saludos

en debian viene asi el .profile

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
 



Citar:

PATH="./:$PATH"

Con ello añades el dichoso ./ (que como todo el mundo sabe quiere decir "aquí donde estoy") en el camino de búsqueda de los ejecutables. De hecho al hacerlo así tienes dos ventajas: Te vale para cualquier directorio estés donde estés, no sólo para el /home/user/bin, y le das preferencia a los tuyos antes que a los del sistema, si es que se llaman igual.

el modificar el path por el punto para que los programas funcionen en cualquier directorio
parece buena idea pero por algo  no viene asi por defecto
 



 
codificador - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
No viene así, supongo, porque puede suceder que realmente no sabes lo que hay en el directorio por defecto. La posibilidad de que se generen errores, supongo también, aumenta en caso de que alguien tenga la extraña costumbre de llamar a sus programas y scripts igual que los del sistema.

Fuera de eso no le veo más inconveniente. Ya digo que era una práctica corriente en los tiempos de las consolas de texto...
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Truco: Hacer Que Un Programa Se Ejecute Como Un Comando De Gnu/linux 
 
Pero Julio, los "comandos" , si no son funciones de bash <nombre de tu shell preferida>, son parte de coreutils. Es decir, también son programas.

Lo que haces aquí es que el directorio donde se encuentran tus ejecutables esté en la variable PATH.


P.D: Querella de debianitas y ubunteros. env-update && emerge solution.
 



 
última edición por Invitado el Lunes, 14 Marzo 2011, 18:32; editado 2 veces 
 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Haciendo Un Front-end Para El Comando Find... jsbsan Videotutoriales 5 Viernes, 18 Marzo 2011, 18:43 Ver último mensaje
jsbsan
No hay nuevos mensajes Como Crear Un Programa De Consola O Comand... v3ctor General 1 Lunes, 19 May 2014, 08:09 Ver último mensaje
Shell
No hay nuevos mensajes ¿Como Impedir Que Un Programa Gambas Se E... v3ctor General 8 Domingo, 15 Abril 2018, 15:52 Ver último mensaje
v3ctor
No hay nuevos mensajes Como Hacer Que Un Programa Gambas Abra En ... tincho Aplicaciones/Fragmentos de Código 17 Miercoles, 25 Septiembre 2019, 18:03 Ver último mensaje
gambafeliz
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron