Hi,
wieso findet
=============================
idcc-devel:/etc/init.d # grep hostname *
boot.localnet:# Description: setup hostname and yp
boot.localnet: # set hostname and domainname
boot.localnet: echo -n Setting up hostname \'${XHOSTNAME%%.*}\'
boot.localnet: hostname ${XHOSTNAME%%.*}
mysql: pid_file=$datadir/`/bin/hostname`.pid
postfix: FQHN=$($POSTCONF -h myhostname)
rc: read -t 2 check < /proc/sys/kernel/hostname 2> /dev/null
skeleton:# $named hostname resolution available
skeleton.compat:# $named hostname resolution available
vmware_tools_config:# $named hostname resolution available
==============================
einiges, aber
==============================
idcc-devel:/etc/init.d # grep \
Hallo, Am Sun, 25 Sep 2011, Lentes, Bernd schrieb:
wieso findet
============================= idcc-devel:/etc/init.d # grep hostname * boot.localnet:# Description: setup hostname and yp [..] einiges, aber
============================== idcc-devel:/etc/init.d # grep \
* idcc-devel:/etc/init.d # ============================== nichts.
set -x.
Du suchst nach '<hostname>', das steht aber in keiner der Dateien.
Grep verwendet Basic Regexe (siehe man 7 regex), d.h. du mußt die <>
escapen (und zwar für grep!). Ergo:
grep '\
Hi, David Haller schrieb:
Hallo,
Am Sun, 25 Sep 2011, Lentes, Bernd schrieb:
wieso findet
============================= idcc-devel:/etc/init.d # grep hostname * boot.localnet:# Description: setup hostname and yp [..] einiges, aber
============================== idcc-devel:/etc/init.d # grep \
* idcc-devel:/etc/init.d # ============================== nichts.
set -x.
Ist hilfreich.
Du suchst nach '<hostname>', das steht aber in keiner der Dateien. Grep verwendet Basic Regexe (siehe man 7 regex), d.h. du mußt die <> escapen (und zwar für grep!).
Ok.
grep '\
' *
Ok.
grep "\
" *
Ok.
grep \\\
* (im letzten Fall mußt du nämlich sowohl den \ als auch <> für die shell mit je einem vorangestellten \ escapen
Versteh ich jetzt nicht so ganz. Das \
Lentes, Bernd wrote: [...]
grep \\\
* (im letzten Fall mußt du nämlich sowohl den \ als auch <> für die shell mit je einem vorangestellten \ escapen
Versteh ich jetzt nicht so ganz. Das \
bei grep ankommen muss, ist klar. Schauen wir uns \\\< mal an. Das erste \ wird von der shell gefressen und nimmt dem zweiten \ seine Bedeutung als Sonderzeichen, oder ?
Korrekt!
Was macht denn dann das zweite \ ? Das zweite ist das, das durch den ersten (s.o.) überbleibt. Die beiden bilden sozusagen ein Paar. Du meinst hier wohl das dritte. Und das sorgt dafür das das "<" eben als "<" rübergeht und nicht seine Sonderbedeutung wahrnimmt.
also die Blöcke sind: \\ wird zu \ (nach der Shell) \< wird zu < (nach der Shell) übrig bleibt "\<". Klar soweit? Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Andreas schrieb:
Was macht denn dann das zweite \ ? Das zweite ist das, das durch den ersten (s.o.) überbleibt. Die beiden bilden sozusagen ein Paar. Du meinst hier wohl das dritte. Und das sorgt dafür das das "<" eben als "<" rübergeht und nicht seine Sonderbedeutung wahrnimmt.
also die Blöcke sind:
\\ wird zu \ (nach der Shell) \< wird zu < (nach der Shell)
übrig bleibt "\<".
Klar soweit?
Verstanden. Danke. Bernd Helmholtz Zentrum München Deutsches Forschungszentrum für Gesundheit und Umwelt (GmbH) Ingolstädter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir´in Bärbel Brumme-Bothe Geschäftsführer: Prof. Dr. Günther Wess und Dr. Nikolaus Blum Registergericht: Amtsgericht München HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Lentes, Bernd, Montag, 26. September 2011:
Versteh ich jetzt nicht so ganz. Das \
bei grep ankommen muss, ist klar. Schauen wir uns \\\< mal an. Das erste \ wird von der shell gefressen und nimmt dem zweiten \ seine Bedeutung als Sonderzeichen, oder ? Was macht denn dann das zweite \ ? Ist einfach nur ein Zeichen ? Und das dritte ? Sorgt dafür, daß mit < keine Eingabeumleitung passiert ?
Der erste \ nimmt dem zweiten seine Sonderbedeutung, d.h. es kommt ein \ bei grep an. Der dritte \ nimmt dem folgenden Zeichen, dem < seine Sonderbedeutung, d.h. es kommt \< bei grep an, wo es hinsoll. Der erste und der dritte \ sorgen also dafür, daß der zweite \ und das vierte Zeichen < unverfälscht durchgereicht werden. -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Mon, 26 Sep 2011, Lentes, Bernd schrieb:
David Haller schrieb:
Am Sun, 25 Sep 2011, Lentes, Bernd schrieb:
wieso findet ============================= idcc-devel:/etc/init.d # grep hostname * boot.localnet:# Description: setup hostname and yp [..] einiges, aber
============================== idcc-devel:/etc/init.d # grep \
* idcc-devel:/etc/init.d # ============================== nichts.
set -x.
Ist hilfreich.
Du suchst nach '<hostname>', das steht aber in keiner der Dateien. Grep verwendet Basic Regexe (siehe man 7 regex), d.h. du mußt die <> escapen (und zwar für grep!). [..] grep \\\
* (im letzten Fall mußt du nämlich sowohl den \ als auch <> für die shell mit je einem vorangestellten \ escapen
Versteh ich jetzt nicht so ganz. Das \
bei grep ankommen muss, ist klar. Schauen wir uns \\\< mal an. Das erste \ wird von der shell gefressen und nimmt dem zweiten \ seine Bedeutung als Sonderzeichen, oder ? Was macht denn dann das zweite \ ? Ist einfach nur ein Zeichen ? Und das dritte ? Sorgt dafür, daß mit < keine Eingabeumleitung passiert ?
Schau dir per 'set -x' an, mit was jeweils grep aufgerufen wird,
d.h. was die shell schon vorher damit anstellt:
set -x
grep <hostname> /dev/null
grep \
participants (4)
-
Andre Tann
-
David Haller
-
Kyek, Andreas, VF-DE
-
Lentes, Bernd