awk: parameter als awk kommando interpretieren

A

aloisius

Jungspund
Hallo,

ich möchte den input in ein awk program als awk kommando interpretieren
z.B. liefert

echo "2+2" | awk '{print $0}'

als Ausgabe 2+2
was muss ich tun um hier 4 als ausgabe zu bekommen?

Kann mir da jemand weiterhelfen?

Danke
 
Mir stellt sich eher die Frage: Wieso sollte man dafür awk nutzen? Man sollte Programme dafür nutzen, wofür sie gemacht sind und awk ist nicht unbedingt zum Rechnen vorgesehen. Ansonsten musst du den String erstmal mit substr zerlegen und dann quasi das +-Zeichen wieder einschieben:

echo "2+2" | awk '{print substr($1,0,1) + substr($1,1,2)}'

Die dafür benötigte Rechenzeit ist aber definitiv grösser als wenn man bc verwendet.
 
Zuletzt bearbeitet:

Ähnliche Themen

sed in awk

ffmpeg Framerate erhöhen.

Zeilen behalten, die Werte in einem bestimmten Bereich enthalten

Zeilen aus Txt-Datei entfernen, wenn eine Spalte einen bestimmten Wert enthält

Grafische Anzeige der Temperatur

Zurück
Oben