Re: [OT] awk: gsub() - ein Zeichen mit einer leeren Zeichenkette ersetzen?

From: Harold Gutch <logix(at)foobar.franken.de>
Date: Wed, 17 Apr 2013 15:01:02 +0200

On Wed, Apr 17, 2013 at 01:27:21PM +0200, mail(at)adminradio.de wrote:
> Moin zusammen,
>
> mit Hilfe eines AWK-Skriptes möchte ich gern die erste Zeile einer
> CSV-Datei aufräumen, sprich Anführungszeichen und Sternchen entfernen. Das
> hatte ich mir wie folgt gedacht:
>
[...]
> # Aufräumen
> gsub(/\"/, //, $0) # Tüddelüh mit Nichts ersetzen
> gsub(/\*/, //, $0) # Sternchen mit Nichts ersetzen
[...]
>
> Das funktioniert auch recht gut, allerdings werden mir die
> Anführungszeichen respektive die Sternchen mit Zahlen ersetzt, was
> vermutlich daran liegt, dass "gsub" einen Rückgabewert liefert (die Anzahl
> der Ersetzungen). Das' doch aber nicht Sinn der Sache, oder? Tante Google
> hat mir nicht wirklich weiterhelfen können, außer, dass ich ggfs. gensub()
> verwenden könnte, allerdings hat mein awk kein gensub() - (Mac OS X
> 10.8.2, awk version 20070501)

Mit gsub(/\"/, "", $0) (also "" im zweiten Parameter statt //) und
dito im zweiten gsub() scheint es zumindest bei mir zu funktionieren.

Gruß,
  Harold

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 17 Apr 2013 - 15:01:09 CEST

search this site