❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

mehrere Befehle anwenden

Alles zur Programmierung im LibreOffice.
MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

mehrere Befehle anwenden

Beitrag von MicroWnono » So 16. Jun 2024, 19:27

Hallo liebe LibreOffice Anwender,

ich würde gern mehrere "Suchen und Ersetzen" Befehle in LibreWriter zu einer Anweisung zusammenfassen.
Was die einfachste Möglichkeit ist weiß ich eben nicht. Makro oder Stapeldatei oder Programm ? Ich bin da auch Anfänger.

Ich habe einige *.txt Dateien in einem Ordner, die ich, wenn möglich alle gleichzeitig über eine Anweisung laufen lassen möchte. Das betrifft 4 x "Suchen und Ersetzen" hintereinander.

Wie mache ich das möglichst einfach?

Danke für eure Hilfen.

Gruß, MicoWnono
-
Gruß, MicroWnono

Benutzeravatar
miesepeter
* LO-Experte *
Beiträge: 2157
Registriert: So 19. Dez 2010, 18:16
Wohnort: Bayern

Re: mehrere Befehle anwenden

Beitrag von miesepeter » So 16. Jun 2024, 20:35

MicroWnono hat geschrieben:
So 16. Jun 2024, 19:27
Ich bin da auch Anfänger.

Hallo,
ich würde dir dazu spontan grepwin empfehlen, falls du unter Windows arbeitest. Das Programm ist nahezu selbsterklärend.

Habe es unter W1064pro mal ausprobiert bei 4 txt-Dateien in einem Arbeitsschritt und in allen Dateien gleichermaßen Wörter ersetzt, hat geklappt.
Ob das von LibreOffice aus ohne Makro-Kenntnisse möglich ist, kann ich dir nicht sicher sagen, ich vermute aber nein. - Ciao

MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

Re: mehrere Befehle anwenden

Beitrag von MicroWnono » So 16. Jun 2024, 21:06

Hallo miesepeter,

ich danke Dir für Deinen guten Tipp.
Ich arbeite auf Linux. Deshalb die Andeutung, ob das vielleicht auch von der Konsole aus als Shellskript gemacht werden kann?
Ich brauche da erst mal ein wenig Anschub, da ich mich damit gar nicht auskenne.
-
Gruß, MicroWnono

Benutzeravatar
karolus
* LO-Experte *
Beiträge: 2580
Registriert: Fr 10. Dez 2010, 10:01

Re: mehrere Befehle anwenden

Beitrag von karolus » So 16. Jun 2024, 21:23

MicroWnono hat geschrieben:
So 16. Jun 2024, 21:06
Hallo miesepeter,
Ich arbeite auf Linux. Deshalb die Andeutung, ob das vielleicht auch von der Konsole aus als Shellskript gemacht werden kann?
Ich brauche da erst mal ein wenig Anschub, da ich mich damit gar nicht auskenne.
Auf Linux gibts da sed awk gawk … python um nur die zu nennen die mir spontan einfallen, aber für eine konkretere Hilfe müsstest du schon die Aufgabenstellung deutlich ausführlicher beschreiben!
LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)

MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

Re: mehrere Befehle anwenden

Beitrag von MicroWnono » So 16. Jun 2024, 22:17

Hallo,
für eine konkretere Hilfe müsstest du schon die Aufgabenstellung deutlich ausführlicher beschreiben!
Eigentlich für's erste, nur 4x "Suchen und Ersetzen", nacheinander. Das möchte ich dann auf mehrere *.txt Dateien in einem Ordner gleichzeitig anwenden. Vielleicht könnte man das auch als Shellskript schreiben?
Wenn das auch mit ... sed awk gawk … python geht und nicht allzuviel Einarbeitungszeit benötigt, würde ich das auch gern mal versuchen. Danke für den Tipp.
-
Gruß, MicroWnono

Benutzeravatar
miesepeter
* LO-Experte *
Beiträge: 2157
Registriert: So 19. Dez 2010, 18:16
Wohnort: Bayern

Re: mehrere Befehle anwenden

Beitrag von miesepeter » Mo 17. Jun 2024, 08:57

MicroWnono hat geschrieben:
So 16. Jun 2024, 22:17
nicht allzuviel Einarbeitungszeit
Hallo,

ich kenne mich in dem Metier auch nicht aus und suche einfach im Internet, Suchbegriff: grep ersetzen in dateien

Gefunden z. B.:
https://stackoverflow.com/questions/15402770/how-to-search-and-replace-using-grep hat geschrieben:Example

grep -rl 'windows' ./ | xargs sed -i 's/windows/linux/g'

This will search for the string 'windows' in all files relative to the current directory and replace 'windows' with 'linux' for each occurrence of the string in each file.
https://www.tecchannel.de/a/suchen-und-ersetzen-in-dateien-unter-linux,2033812 hat geschrieben:Mit dem Tool sed gibt es eine Lösung für die Konsole zum Suchen und Ersetzen von bestimmten Zeichenfolgen. ...
Nun nehmen wir an, Sie haben nicht nur eine Datei, sondern eine ganze Menge davon. Und in allen müssen Sie einen Begriff ersetzen. Dazu nehmen wir nicht nur sed, sondern kombinieren es mit find:

$ find /<Pfad>/<Dateien> -type f -exec sed -i 's/<alter Begriff>/<neuer Begriff>/g' {} \;
  • Schließlich kannst du grepwin auch noch unter WINE einsetzen. Hab's gerade ausprobiert: Funktionierte beim "gleichzeitigen" Ersetzen von Text in mehreren txt-Dateien.
Der Königsweg ist natürlich, so wie es @karolus vorschlägt, die Ersetzungsvorgänge von Grund auf zu lernen.

MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

Re: mehrere Befehle anwenden

Beitrag von MicroWnono » Mo 17. Jun 2024, 09:32

Hallo miesepeter und karolus,

ich melde mich nur kurz um mich für eure Vorschläge zu bedanken.
Ich muss das erst versuchen.
-
Gruß, MicroWnono

MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

Re: mehrere Befehle anwenden

Beitrag von MicroWnono » Mo 17. Jun 2024, 10:46

Hallo,

also jetzt habe ich schon gesehen, dass man mit den vorgeschlagenen konsolen-Befehlen gut Wörter finden und austauschen kann.
Aber ist es auch möglich wie das in der "Suchen und Ersetzen" Funktion bei LW ist, z.B. einzelne Zeichen verschiedenlicher Schriftart oder Aussehen auszutauschen.
Ich verwende Textdateien, die durch OCR entstanden sind. Da entstehen manchmal Satzzeichen oder Buchstaben die nicht zu zu meiner gewählten Zielschrift passen.

Beispiele:
Der rohe OCR Text hat am Ende jeder Zeile einen Zeilenumbruch. Die entferne ich manuell über 3 Schritte über einen kleinen Umweg, so dass aber Absätze den Zeilenumbruch behalten.
Link: https://www.com-magazin.de/tipps-tricks ... 98407.html

Der Gedankenstrich ist manchmal sehr lang gezogen — gegenüber - (in Wirklichkeit noch extremer). Dann ist es nötig die zu langen Gedankenstriche gegen die etwas kürzeren auszutauschen. Mir ist nicht ganz klar, ob der lange Gedankenstrich einen anderen Ascii-Code hat wie der kurze, oder ob es sich um andere Schriften handelt.

Ich vermute, dass die konsolen-Befehle nur eindeutige Wörter finden und austauschen, aber ob sie auch prinzipiell gleiche Satzzeichen, nur mit anderem aussehen finden und austauschen?
Und, eben die Zeilenumbrüche. Es sollen ja nicht generell alle Zeilenumbrüche entfernt werden. Nur die am ende einer Zeile gesetzt sind.

Vielleicht kann mir dazu noch einmal jemand etwas Klarheit verschaffen?
Danke euch.
-
Gruß, MicroWnono

Benutzeravatar
miesepeter
* LO-Experte *
Beiträge: 2157
Registriert: So 19. Dez 2010, 18:16
Wohnort: Bayern

Re: mehrere Befehle anwenden

Beitrag von miesepeter » Mo 17. Jun 2024, 11:15

MicroWnono hat geschrieben:
Mo 17. Jun 2024, 10:46
Der Gedankenstrich ist manchmal sehr lang gezogen — gegenüber -
Hier musst du nach Unicode-Zeichen suchen. Die findest du im Dialog (Writer) Sonderzeichen. Auch kannst du dir den Code mit Tastenkombination ALT + C anzeigen lassen (bei Wiederholung wird wieder ins Zeichen umgewandelt; bei US-englischer UI heißt der Shortcut ALT + X). Es handelt sich in den von dir genannten Fällen meist um En-dash und Em-dash. Im Sonderzeichen-Dialog Suchen kannst du en oder en- oder em eingeben und entsprechende(s) Zeichen werden dir gezeigt.
-
Wieweit die genannten Hilfsmittel in der Lage sind, einen manuellen Zeilenwechsel zu ersetzen, musst du selbst herausfinden. @Karolus hat für LibreOffice/Linux mal den Tipp gegeben, wie man im Dialog SUCHEN&ERSETZEN dieses "Zeichen" suchen und dann z. B. mit einem Leerzeichen ersetzen kann.
https://unicode-org.github.io/icu/userguide/strings/regexp.html hat geschrieben:\n
Match a LINE FEED, \u000A.
Ähnliches müsste auch für Anführungszeichen gelten, vorausgesetzt, sie liegen paarweise vor (was bei OCR nicht immer der Fall sein dürfte). Hier würde ich suchen "(.+)" und ersetzen „$1“. Reguläre Ausdrücke!

Aus meiner Sicht wäre es langsam an der Zeit, dem Forum Beispieldateien vorzustellen, die die genannten Aufgabenstellungen enthalten. - Ciao

EDIT
Der Beitrag wurde mehrfach geändert.

MicroWnono
Beiträge: 50
Registriert: Di 4. Jun 2024, 14:19

Re: mehrere Befehle anwenden

Beitrag von MicroWnono » Mo 17. Jun 2024, 18:57

Hallo miesepeter,

danke für für die letzte Meldung.

Ich habe ein Beispiel-Dokument hier angehängt. Ich hoffe dass es damit verständlicher wird. Eigentlich ganz simple Handgriffe, wenn man sie der Reihe nach manuell in LW macht.
Weil es für jede mit OCR generierte Seite die gleiche Routine ist, wäre eine Zusammenfassung der einzelnen Schritte eine logische Sache. Die Zusammenfassung dann gleich für einen Stapel an Seiten verwenden. Das wäre mein Ziel unter Linux.

OCR Rohdaten Beispiel.odt
(27.27 KiB) 134-mal heruntergeladen
-
Gruß, MicroWnono


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten