Respetar múltiples líneas con echo
En ocasiones es útil recoger en una variable el resultado de un comando para procesarlo posteriormente (la salida de cat, grep, ...) y a la misma vez queremos mostrar ese contenido por pantalla con echo. El problema es que éste comando no respeta los saltos de líneas. Veamos un ejemplo:
$ ntpdate=`grep ntpdate /var/log/syslog`
$ echo $ntpdate
Aug 3 14:18:28 tx2500-Natty ntpdate[5233]: adjust time server 91.189.94.4 offset 0.015003 sec Aug 3 14:20:10 tx2500-Natty ntpdate[5323]: adjust time
server 91.189.94.4 offset -0.007577 sec Aug 3 14:20:57 tx2500-Natty ntpdate[5401]: adjust time server 91.189.94.4 offset 0.004040 sec Aug 3 14:22:18
tx2500-Natty ntpdate[5479]: adjust time server 91.189.94.4 offset -0.002003 sec Aug 3 14:29:58 tx2500-Natty ntpdate[5670]: adjust time server
91.189.94.4 offset 0.001987 sec Aug 3 14:31:46 tx2500-Natty ntpdate[5746]: adjust time server 91.189.94.4 offset -0.001275 sec Aug 3 15:26:02
tx2500-Natty ntpdate[6593]: adjust time server 91.189.94.4 offset -0.286619 sec Aug 3 15:26:25 tx2500-Natty ntpdate[6639]: adjust time server
91.189.94.4 offset -0.278193 sec Aug 3 15:41:25 tx2500-Natty ntpdate[6751]: adjust time server 91.189.94.4 offset 0.066937 sec Aug 3 15:49:57
tx2500-Natty ntpdate[6824]: adjust time server 91.189.94.4 offset -0.032212 sec
Para evitar esto basta con utilizar "dobles comillas":
$ echo "$ntpdate"
Aug 3 14:18:28 tx2500-Natty ntpdate[5233]: adjust time server 91.189.94.4 offset 0.015003 sec
Aug 3 14:20:10 tx2500-Natty ntpdate[5323]: adjust time server 91.189.94.4 offset -0.007577 sec
Aug 3 14:20:57 tx2500-Natty ntpdate[5401]: adjust time server 91.189.94.4 offset 0.004040 sec
Aug 3 14:22:18 tx2500-Natty ntpdate[5479]: adjust time server 91.189.94.4 offset -0.002003 sec
Aug 3 14:29:58 tx2500-Natty ntpdate[5670]: adjust time server 91.189.94.4 offset 0.001987 sec
Aug 3 14:31:46 tx2500-Natty ntpdate[5746]: adjust time server 91.189.94.4 offset -0.001275 sec
Aug 3 15:26:02 tx2500-Natty ntpdate[6593]: adjust time server 91.189.94.4 offset -0.286619 sec
Aug 3 15:26:25 tx2500-Natty ntpdate[6639]: adjust time server 91.189.94.4 offset -0.278193 sec
Aug 3 15:41:25 tx2500-Natty ntpdate[6751]: adjust time server 91.189.94.4 offset 0.066937 sec
Aug 3 15:49:57 tx2500-Natty ntpdate[6824]: adjust time server 91.189.94.4 offset -0.032212 sec
Tags
La teoría es cuando crees saber algo, pero no funciona.
La práctica es cuando algo funciona, pero no sabes por qué.
Los programadores combinan la teoría y la práctica:
Nada funciona y no saben por qué.
