Vi un video tutorial para el comando pegar, en el que tres archivos foo,bar,baz estaban conectados horizontalmente con un signo "+" entre ellos.
cat foo
51
33
67
cat bar
10
1
13
cat baz
7
100
15
Entonces, usó un comando pegar para hacer que cada línea fuera una suma completa y canalizó esto en un bucle while que recorre cada línea y la coloca en la calculadora bc:
paste -d+ foo bar baz | while read bla;do echo $bla|bc;done
Estaba confundido por qué usó el complicado bucle while desde
paste -d+ foo bar baz|bc
funcionó también,
sin embargo esto me hizo pensar"¿Hay situaciones en las que conectar el bucle while tiene sentido o incluso es la única forma de lograr algo?"
Respuesta1
En este caso fue solo para mostrar lo que se avanza en el momento, y línea por línea. Canalizar bucles while a veces es realmente útil, por ejemplo, mostrar una barra de progreso. Ejemplo de barra de progreso:
for i in $(seq 1 100)
do
sleep 0.1
echo $i
done | whiptail --title 'Test script' --gauge 'Running...' 6 60 0