Beibehalten des führenden Leerraums beim Lesen >> Schreiben einer Datei zeilenweise in Bash

Ich versuche, ein Verzeichnis von Textdateien zu durchlaufen und sie in einem Dokument zu kombinieren. Das funktioniert prima, aber die Textdateien enthalten Codefragmente und alle meine Formatierungen werden nach links reduziert. Alle führenden Leerzeichen in einer Zeile werden entfernt.

#!/bin/sh
OUTPUT="../best_practices.textile"
FILES="../best-practices/*.textile"
for f in "$FILES"
do
  echo "Processing $f file..."
  echo "">$OUTPUT

  cat $f | while read line; do 
      echo "$line">>$OUTPUT
  done
  echo >>$OUTPUT
  echo >>$OUTPUT
done

Ich bin zugegebenermaßen ein bash noob, aber nachdem ich hoch und niedrig gesucht habe, konnte ich keine richtige Lösung finden. Anscheinend hasst BASH den führenden weißen Raum im Allgemeinen.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage