estoy tomando la siguiente estructura de alrededor de la red como un ejemplo básico de cómo leer desde un archivo en BASH:Echo cambia mis pestañas para espacios
cat inputfile.txt | while read line; do echo $line; done
Mi inputfile.txt está delimitado por tabuladores, sin embargo, y las líneas que salen del comando anterior están delimitadas por espacios.
Esto me causa problemas en mi aplicación real, que es, por supuesto, más compleja que la anterior: quiero tomar la línea, generar algunas cosas nuevas basadas en ella y luego generar la línea original más las cosas nuevas como campos extra Y la canalización será lo suficientemente complicada sin un montón de cut -d ' '
y sed -e 's/ /\t/g'
(que de todos modos no sería seguro para los espacios delimitados por tabuladores que contienen espacios).
He visto soluciones de IFS, pero no parecen ayudar en este caso. Lo que quiero es un OFS ... ¡excepto que estoy en eco, no awk! Creo que si pudiera hacer eco para escupir lo que le di, al pie de la letra, estaría en buena forma. ¿Alguna idea? ¡Gracias!
A menudo no es necesario utilizar el gato como parte de un oleoducto, simplemente redirigir la entrada estándar de la siguiente comando directamente desde el archivo: 'mientras lee la línea; hacer eco $ línea; done