Textdateien Modifizieren

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

-007-ß

Benutzer
Registriert
27. Apr. 2009
Beiträge
103
Reaktionspunkte
0
Punkte
0
Ich bräuchte eine Methode, mit der ich in einem shell-script eine textdatei modifizieren kann!
Weis da jemand zufällig was?
 
Eventuell hilft dir der Web-Editor als 3rd-party-apps.

Itari
 
Ich möchte ja keinen editor sondern eine Lösung, die ich in einem scropt verwenden kann
 
Da bietet sich der sed an - manchmal auch der awk ...

Itari
 
sed hab ich schon probiert, der ersetzt aber immer nur EINE Zeichenkette pro Zeile, ich möchte aber alle ersetzt bekommen.

Wie siehts da mit dem awk aus, ist das bei dem auch so?
 
sed hab ich schon probiert, der ersetzt aber immer nur EINE Zeichenkette pro Zeile, ich möchte aber alle ersetzt bekommen.

Das kann man durch Hintereinanderschalten, Optionsschalter oder durch sed-Skripte schon hinbekommen. Ist halt alles nicht unbedingt immer ganz einfach ... manchmal kann man tagelang an einem RE herumbasteln.

Das wäre auch beim awk möglich.

Es wäre auch auf der Kommandozeile oder per Shell-Skript möglich den Kommandozeilen PHP-Interpreter zu verwenden, welcher ausgesprochen mächtige Substitionsmöglichkeiten hätte. Auch perl (funktioniert eine wenig wie awk plus shell) ist super geeignet für Textmanipulationen.

Alle Tools sind zum Beispiel auch für Windows (und andere Plattformen) verfügbar, so dass man recht universell einsetzbare Skripte entwickeln kann.

Itari
 
Es wäre auch auf der Kommandozeile oder per Shell-Skript möglich den Kommandozeilen PHP-Interpreter zu verwenden, welcher ausgesprochen mächtige Substitionsmöglichkeiten hätte.
Geht denn das jetzt in der aktuellsten Firmware von Hause aus? Vorher musste man sich doch php via ipkg installieren, damit man aus der shell an PHP kommen konnte.
 
Geht denn das jetzt in der aktuellsten Firmware von Hause aus? Vorher musste man sich doch php via ipkg installieren, damit man aus der shell an PHP kommen konnte.

Man muss per IPKG installieren, aber das ist ja kein wirkliches Problem. Perl ist mittlerweile vorhanden. Und Perl ist neben Python eine Super-Programmiersprache.

Itari
 
Das hintereinanderschachteln von sed kann man sich sparen:
echo HakkoHakko | sed 's/k/l/'
Gibt ja eben nach dem oben beschriebenen Problem nicht wie erwartet "HalloHallo" aus, sondern das Ergebnis lautet "HalkoHakko"

Will man nun "HalloHallo" haben, dann schachtelt man entweder sed hintereinander oder man schreibt
echo HakkoHakko |sed 's/k/l/g'

Das erzielt dann den gewünschten Effekt, nämlich "HalloHallo"
 
Ich hatte dich da wohl missverstanden, denn ich dachte, du wolltest aus der Zeile, z. B. "ich bin Hans Meier und nicht Karl Schulz" den "Hans" gegen "Otto" und den "Karl" gegen "August" austauschen ... halt eine Zeichenkette gegen eine andere und das mehrfach in einer Zeile ... das andere wäre der 'global'-Schalter 'g', der den RE mehrfach auf die Zeile anwendet ...

Itari
 
Ja, da haben wir wohl etwas aneinander vorbeigeredet
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat