sed - Parameter an Shellkomando im replace übergeben?

03/12/2015 - 12:00 von Steffen Buhr | Report spam
Hallo,

wie làßt sich der Inhalt des \1 an ein im replacment verwendetes
Shellprogramm übergeben (Bash, nur für den Hausgebrauch)? Ich brauche
(vereinfacht) etwas wie

sed 's/\(pattern\)/$(date -d"\1" '+%s')/' datei.txt

Damit soll je Zeile ein Datum in den entsprechenden Timestamp umgewandelt
werden, der Inhalt des \1 kommt jedoch nicht beim date an. Geht so etwas
überhaupt? Ich habe nichts vergleichbares gefunden.

Besten Gruß
 

Lesen sie die antworten

#1 Tim Landscheidt
03/12/2015 - 17:13 | Warnen spam
Steffen Buhr wrote:

wie làßt sich der Inhalt des \1 an ein im replacment
verwendetes Shellprogramm übergeben (Bash, nur für den
Hausgebrauch)? Ich brauche (vereinfacht) etwas wie

sed 's/\(pattern\)/$(date -d"\1" '+%s')/' datei.txt

Damit soll je Zeile ein Datum in den entsprechenden
Timestamp umgewandelt werden, der Inhalt des \1 kommt jedoch
nicht beim date an. Geht so etwas überhaupt? Ich habe nichts
vergleichbares gefunden.



Nein, sed kann nur "einfache" Ersetzungen durchführen. Ich
würde Perl/Python/etc. empfehlen.

Tim

Ähnliche fragen