Re: Duda sobre nohup
El Martes, 25 de Abril de 2006 16:46, domingo.sanchez@hrc.es escribió:
> Quoting Iñaki <ibc2@euskalnet.net>:
> > Claro que sí, de hecho había sido un descuido. Ya había usado
> > anteriormente cosas parecidas lo que pasa es que (no sé porqué) yo
> > prefiero usar: $(comando...)
> > en vez de:
> > `comando...`
> > pero no me preguntes porqué. El caso es que siempre que lo he probado me
> > da idénticos resultados pero en esta lista ya he oído que tienen algún
> > matiz que los diferencia.
>
> En ese caso ambos dan el mismo resultado en bash, pero si utilizas $(...)
> el script no será portable a los shell sh y ksh clásicos, lo que te dará
> igual si no vas a usar más que linux o algún Unix comercial muy moderno. Si
> administras
> algún Unix de hace añitos entonces agradecerás haber hecho el script usando
> `..`
> porque si no te toca ver como instalar bash a dicho Unix o mantener una
> versión
> distinta del script que ya utilizabas en el resto de equipos.
>
> Por otro lado, $( ...) tiene en ciertos casos una enoooorme ventaja: puedes
> anidarlos, cosa que con `...` es imposible. Ejemplo:
> [domingo@toboso domingo]$ cat uno
> 1
> [domingo@toboso domingo]$ cat dos
> 2
> [domingo@toboso domingo]$ echo "hola-`cat uno`"
> hola-1
> [domingo@toboso domingo]$ echo "hola-$(cat uno)"
> hola-1
> [domingo@toboso domingo]$ cat cual
> uno
> [domingo@toboso domingo]$ echo "hola-$(cat $(cat cual))"
> hola-1
>
> Si ahora
> [domingo@toboso domingo]$ cat cual
> dos
> pues tendremos
> domingo@toboso domingo]$ echo "hola-$(cat $(cat cual))"
> hola-2
>
> En el ejemplo conseguimos en una sola línea y comando que a la cadena hola
> se le añada el contenido de un fichero cuyo nombre (el del fichero) es
> seleccionado a partir del contenido de otro fichero. Hay bastante
> situaciones en las que es útil para ahorrar líneas de script o pq no me
> queda más remedio que hacerlo en un único comando entre pipes disponer de
> la salida de un comando
> tal que la cadena de texto que define el comando a ejecutar depende a
> su vez de
> la salida de otro comando (o de varios al mismo nivel o de más
> profundidad). Je, je, así podrás hacer cosas como:
> comando1 "texto...$($(comando2) -res $(comando3))..mas texto"
>
> UN SALUDO DOMINGO S R
Otra lección impresionante y muy didáctica. Muchas gracias seguro que en
nombre de todos.
--
intentando mejorar Konqueror:
http://konqueror4.linuxdevel.net
y si te gusta puedes votar: ;)
http://www.kde-look.org/content/show.php?content=36385
Reply to: