Mailinglist Archive: opensuse-de (4938 mails)

< Previous Next >
Re: Problem mit sed/regex;;
  • From: B.Brodesser@xxxxxxxxxxxxxx (Bernd Brodesser)
  • Date: Wed May 24 12:29:03 2000
  • Message-id: <20000524142903.U15665@xxxxxxxxxxxxxx>



* David Haller schrieb am 24.Mai.2000:
Andreas.Kyek@xxxxxxxxx wrote:

Das Problem ist, das die Shell alles in einfachen Quotes (') gar
nicht beachtet.

Ist vielleicht nicht ganz geschickt ausgedrückt. Alles was in
einfachen Quotes steht wird so genommen wie es da steht. '$VAR' zum
Beispiel wird als Dollar V A R genommen, ohne Leerzeichen natürlich.
Es wird nicht interpretiert.

Einzige Ausnahme: Der Backslash \ und das einfache Hochkomma ' selber.

Insbesondere findet
keine Variablenersetzung statt. Hier versuchst du also den String '$VAR1'
durch den String '$VAR2' zu ersetzen.

Ja, daß ist richtig. Testweise kann man mal folgendes eingeben:

$ VAR=Inhalt
$ echo $VAR
Inhalt
$ echo "$VAR"
Inhalt
$ echo '$VAR'
$VAR
$ echo `$VAR`
bash: Inhalt: command not found

Die " schützen Leerzeichen, Returns und vor allem * und ?. Das macht
auch \, allerdings nur für das nächste Zeichen.

$ cd /
$ echo *
bin boot dev etc home lib lost+found mnt opt proc root sbin tmp usr var
$ echo "*"
*
$ echo \*
*
$ echo '*'
*
$ echo `*`
bash: /usr/games/bin: is a directory

Alles was zwichen `` steht wird ausgeführt und damit ersetzt.

Bernd


--
Homepages von deutschsprachigen Linux-Gurus:
Kristian Köhntopp: http://www.koehntopp.de/kris/artikel/
Sven Guckes: http://www.math.fu-berlin.de/~guckes/sven
Robin S Socha: http://socha.net/index2.html |Zufallssignatur 10

---------------------------------------------------------------------
To unsubscribe, e-mail: suse-linux-unsubscribe@xxxxxxxx
For additional commands, e-mail: suse-linux-help@xxxxxxxx


< Previous Next >
References