On Fri, Oct 09, 2015 at 05:15:01PM +0200, Ramses wrote: > El 9 de octubre de 2015 17:00:46 CEST, "Manolo Díaz" <diaz.man...@gmail.com> > escribió: > >El viernes, 9 oct 2015 a las 14:58 UTC > >Ramses escribió: > > > >> El 9 de octubre de 2015 16:19:58 CEST, "Manolo Díaz" > ><diaz.man...@gmail.com> escribió: > >> >El viernes, 9 oct 2015 a las 05:32 UTC > >> >Aaron D. escribió: > >> > > >> >> On Fri, Oct 09, 2015 at 01:39:32AM +0200, Ramses wrote: > >> >> > Buenas noches, > >> >> > > >> >> > Si desde una sesión SSH ejecuto: > >> >> > > >> >> > echo $HOSTNAME > fichero.txt > >> >> > > >> >> > Me introduce sin problemas el nombre de la máquina en el fichero > >> >fichero.txt > >> >> > > >> >> > El problema lo tengo cuando introduzco esa línea en el fichero > >> >/etc/rc.local para que se ejecute cuando arranca la máquina, que > >genera > >> >el fichero.txt, pero en blanco. > >> >> > > >> >> > ¿Cómo podría generar ese fichero con el contenido de esa > >variable? > >> > > >> >Con la orden hostname. > >> > > >> >> > Sé que podría sacarlo desde /etc/hostname, pero me causa > >curiosidad > >> >que no lo genere al poner esa línea en el rc.local. > >> >> > > >> >> > Otra duda: Al hacer un printenv no aparece la variable HOSTNAME. > >> >¿En qué entorno está esa variable?. > >> >> > > >> >> > > >> >> > Saludos y gracias, > >> >> > > >> >> > Ramses > >> >> > > >> >> > >> >> Supongo que será porque cuando ejecuta rc.local aún no ha > >levantado > >> >el servicio que asigne el hostname. > >> > > >> >Creo que no. rc.local es el último de los servicios en lanzarse, o > >al > >> >menos es lo predeterminado. Diría que ese script se lanza desde un > >> >entorno en que HOSTNAME no está asignada o no se exporta. > >> > >> Manolo, muchas gracias por la info... > >> > >> Pero, por ejemplo, lo que estoy intentando hacer es: > >> > >> echo "Equipo: " $HOSTNAME | mail -s "Envio desde " $HOSTNAME > >m...@correo.es > >> > >> Eso me llega bien desde la Consola, ¿pero como podría hacerlo con el > >comando 'hostname' en esa línea? > >> > >> > >> Saludos y gracias, > >> > >> Ramses > >> > > > >Con una sustitución de orden > > > >HOSTNAME=`hostname` > > > >a partir de ahora esa variable tendrá el valor que quieres. > > > >Saludos. > > Sí, ¿pero sin meterlo en una variable?, ¿cómo podría hacerlo para que > envíe la salida del comando 'hostname' incluyendo el comando en la > misma línea del "echo....."?
Hola: Eso depende. Si requieres únicamente el hostname sin el dominio: $ echo "Equipo: $(hostname -a)" | mutt -s "Envío desde $(hostname -a)" \ m...@correo.es o: $ echo "Equipo: `hostname -a`" | mutt -s "Envío desde `hostname -a`" \ m...@correo.es Si necesitas el hostname como FQDN: $ echo "Equipo: $(hostname -f)" | mutt -s "Envío desde $(hostname -f)" \ m...@correo.es o: $ echo "Equipo: `hostname -f`" | mutt -s "Envío desde `hostname -f`" \ m...@correo.es Saludos. -- Pablo Jiménez