Linux / Befehl fmt: Textabsätze neu umbrechen
fmt gibt allgemeine Textabsätze in einem umbrochenen, leicht lesbaren Format aus. Es kann verwendet werden, um Notizen oder Entwürfe aufzuräumen, bei denen Zeilenumbrüche inkonsistent sind.
Da fmt die Zeilenumbrüche innerhalb von Textabsätzen neu verteilt, eignet es sich nicht für Quellcode, CSV, Markdown-Tabellen oder Protokolle, die sinnvolle Zeilengrenzen haben. Die Originaldatei bleibt standardmäßig unverändert; der formatierte Text erscheint auf der Standardausgabe.
Grundlegende Syntax
fmt [options] [file...]
Installierte Implementierungen und Optionen können je nach Distribution variieren. Überprüfen Sie die Beschreibung auf Ihrem aktuellen System mit man fmt.
Beispiele
Grundlegende Absatzformatierung
Ordnet die Zeilen der Eingabeabsätze zu einer normalen Lesebreite an.
fmt notes.txt
Zeilenbreite festlegen
Bricht Absätze erneut um, mit einer Zielbreite von etwa 60 Spalten.
fmt -w 60 draft.txt
Ausgabe separat speichern
Behält das Original bei und speichert das Ergebnis in einer neuen Datei.
fmt -w 72 draft.txt > draft-formatted.txt
Den neuen Zeilenumbruch nachvollziehen
fmt schneidet nicht einfach an einer bestimmten Breite, sondern verteilt die Wörter eines Absatzes auf neue Zeilen, ohne ihre Reihenfolge zu ändern. Das folgende Beispiel wandelt eine lange einzelne Zeile in mehrere Zeilen von etwa 20 Zeichen Breite um.
printf 'one two three four five six\n' | fmt -w 20
Beispielausgabe (Wortanordnung kann je nach Implementierung und Optionen variieren):
one two three four five six
fmt trennt Wörter nicht absichtlich mitten im Wort. Für eine feste Umbruchbreite verwenden Sie fold. Das Aufteilen in mehrere Dateien mit split ist ein anderer Vorgang. Prüfen Sie bei Code, Tabellen und eingerücktem Text vorab das Ergebnis, da dort die Anordnung der Leerzeichen wichtig ist.
Hauptoptionen und Format
| Optionen/Format | Beschreibung |
|---|---|
-w N |
Stellen Sie die gewünschte Zeilenbreite auf N Spalten ein. |
-s |
Nur lange Zeilen aufteilen, ohne kurze Zeilen zusammenzuführen. |
-u |
Den Abstand zwischen Wörtern gleichmäßig anpassen. |
-p prefix |
Formatiert nur Zeilen mit dem angegebenen Präfix. |
Vorsichtsmaßnahmen bei der Verwendung
fmt versteht die Bedeutung der Formatierung nicht, daher sollten Dokumente mit Listen-Einrückungen, Codeblöcken oder Zitaten überprüft werden. Die Zeichenbreite kann von der auf dem Bildschirm sichtbaren abweichen, daher sollten auch koreanische und Zeichen mit breiter Darstellung überprüft werden.
Häufig gestellte Fragen
Ändert fmt die Originaldatei?
Nein. Standardmäßig wird das Ergebnis auf die Standardausgabe ausgegeben. Speichern Sie es in einer separaten Datei und überprüfen Sie es.
Offizielle Dokumentation
Sie können das genaue Verhalten der Optionen und die Unterschiede zwischen den Implementierungen in der offiziellen fmt-Dokumentation nachlesen.




