Creo que puedo estar pasando por alto un punto relativamente fundamental con respecto a Shell. La salida del comando ls por defecto separa la salida con nuevas líneas, pero el shell muestra la salida en una sola línea.
¿Puede alguien explicarme esto? Siempre había supuesto que la salida estaba simplemente separada por espacios, pero ahora que veo la salida separada por nuevas líneas, esperaría que la salida se muestre en líneas separadas.
Ejemplo:
cpoweradm@debian:~/lpi103-4$ ls text*
text1 text2 text3
od muestra que la salida está separada por nuevas líneas:
cpoweradm@debian:~/lpi103-4$ ls text* | od -c
0000000 t e x t 1 \n t e x t 2 \n t e x t
0000020 3 \n
0000022
Si hay nuevas líneas, entonces ¿por qué la salida no se muestra como:
text1
text2
text3
ls
. Es útil, pero es claramente inconsistente y sorprendente. Pero tenga en cuenta que algunos comandos que producen resultados en color eliminarán los colores cuando se canalicen también.