Rechtschreibprüfung einer Datei über die Befehlszeile, nicht interaktiv

8

Ich habe eine große Textdatei, die viele englische Wörter enthält. Ich suche nach einer Möglichkeit, diese Datei mit einer Befehlszeilen-Rechtschreibprüfung in Linux zu bearbeiten. Ich habe einige Wege gefunden, dies zu tun, aber nach meinen Recherchen arbeiten alle auf eine interaktive Art und Weise. Ich meine, wenn man ein falsches / falsch geschriebenes Wort sieht, schlagen sie dem Benutzer einige Korrekturen vor und er / sie sollte einen davon auswählen. Da meine Datei ziemlich groß ist und viele falsche Wörter enthält, kann ich sie nicht auf diese Weise bearbeiten. Ich suche nach einer Möglichkeit, der Rechtschreibprüfung zu sagen, dass alle falschen Wörter durch den ersten Kandidaten ersetzt werden. Gibt es eine Möglichkeit, dies zu tun? hat (a / hun) spell eine Option dafür?

Grüße.

    
Hakim 17.09.2012, 04:37
quelle

2 Antworten

5

Wenn Sie es nicht brauchen, um jedes falsche Wort zu ersetzen, sondern einfach die Fehler und Druckvorschläge nicht interaktiv aufzeigen, können Sie ispell:

verwenden %Vor%

Ich kenne leider kein Standard-Linux-Dienstprogramm, das das ausführt, was Sie über die Befehlszeile anfordern, obwohl der Emacs-Vorschlag in den obigen Kommentaren sich nähert.

    
Kyle Barbour 09.03.2014 16:33
quelle
5

Sie können mit folgenden Befehlen experimentieren:

%Vor%

oder:

%Vor%

Aber bedenken Sie, dass die Ergebnisse auch für einfache Dinge schlecht sein können:

%Vor%

Es scheint mit Aspell noch schlimmer zu sein, also ist es wahrscheinlich besser, mit Ispell zu gehen.

Sie benötigen den Befehl script , weil einige Befehle wie ispell nicht als Skript verwendet werden sollen. Normalerweise würden Sie die Ausgabe von yes 0 auf einen Befehl pipen, um zu simulieren, dass Sie immer die Taste "0" drücken, aber einige Befehle erkennen, dass sie Skripts sind und verweigern die Zusammenarbeit:

%Vor%

Glücklicherweise können sie mit dem Befehl script getäuscht werden:

%Vor%

Sie können eine andere Datei als / dev / null verwenden, um die Ausgabe zu protokollieren:

%Vor%     
rsp 02.02.2016 20:59
quelle