Re: String

From: Oliver Fromme <olli(at)secnetix.de>
Date: Thu, 30 Aug 2001 17:35:32 +0200 (CEST)

Dejan Grujin <DGrujin(at)b-o-p.de> wrote:
> Mit tr einen String aus einer Variable umzuwandel versteh ich jetzt. Aber
> wenn ich mir die man von tr anschaue, dann sehe ich nichts von Buchstaben
> aus einem String, der in einer Variable steht...

Das ergibt sich aus dem Zusammenspiel von tr mit Shell-Kon-
strukten. tr tut nur genau seinen Job, wie in der manpage
beschrieben. Da Expandieren und Zuordnen von Variablen
macht die Shell. Vielleicht möchtest Du mal die manpage
sh(1) durchlesen -- gibt mit Sicherheit das eine oder ande-
re Aha-Erlebnis.

> Wenn ich jetzt nen String habe, der zum Beispiel "Großbuchstabeamanfang"
> sein soll aber als "großbuchstabeamanfang" in der Variable steht, wie wandel
> ich NUR den ersten dann um?

Vielleicht solltest Du das, was Du da tust, besser in C
schreiben. Wäre auf jeden Fall performanter und weniger
»von hinten durch die Brust ins Auge«.

Mit einem Stück awk ginge es z.B. wie folgt:

BLABLA=foobar
BLABLA=`echo "$BLABLA" | awk '{print toupper(substr($0,1,1)) substr($0,2)}'`
echo "$BLABLA"

... sollte dann »Foobar« ausgeben. Ich weiß ja nicht, was
Du da genau machen willst, aber theoretisch kannst Du das
ganze Script auch in awk anstelle von sh schreiben.

Gruß
   Olli

-- 
Oliver Fromme, secnetix GmbH & Co KG, Oettingenstr. 2, 80538 München
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
"All that we see or seem is just a dream within a dream" (E. A. Poe)
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 30 Aug 2001 - 17:35:36 CEST

search this site