Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
grep-Frage
#1
Hallo Zusammen,

wenn ich mit einem
grep "/>" filname
in der konsole eine Datei durchsuche bekomme ich alle Zeilen Angezeigt, die ein /> enthalten.


mache ich das aber in einem Script, das mit set -e beginnt bricht das script bei der Zeile mit dem grep ab.
ohne set -e läuft das script problemlos durch.

Wie muss ich (per grep) richtig in einer Datei nach der Zeichenkombination /> suchen, dass auch ein script mit set -e durchläuft ?
Wer weiß rat? ich habe schon eine Nacht das Internet durchsucht und nichts passenden gefunden...

Danke im Voraus
Michel
Produktiv-VDR:
msi K9N2G-Neo (nvidia 8200 onBoard) mit Athlon X2 4850e mit SamuraiZZ
2xNova-HDS2, DH102
Zitieren
#2
Moin moin michel8,

hab es eben nur auf der NullAcht mit bash mit set -e im Script testen können, beide Varianten gehen - $ gibt das Zeilenende mit in die Suche

cat /etc/vdr/plugins/setup/vdr-setup.xml|grep "/>$"

grep "/>$" /etc/vdr/plugins/setup/vdr-setup.xml


MfG.
          MFG.
Sorry, das war mal dir Hardware, nu wechselt die zu oft ;-]
P4/1.8 1024 mit VGA, 100Mbit, USB 2.0 onBoard VGA misc HDDs CDRW2100E - DXR3 EM8300 original Hollywood+ V1 - DVB-C PCI Twinhan 2021 - DVB-T USB2.0 MSI DIGIVOX II V2+3
easyVDR 0.6.08 Kernel 2.6.28.9 - testing 0.7v5, vga2scart,... ;-]


Du Brauchen Hilfe? Wir brauchen Daten! <-> Indianer
Zitieren
#3
moin,

wie sieht denn das ganze Statement aus?

set -e muss eigentlich zwangsläufig scheitern, sobald grep was findet, da dann ungleich 0, siehe "man set"

Code:
set:
-e   errexit Exit immediately if a simple command exits with a non-zero status, unless the command that fails is part of an until or while loop, part of an if statement, part of a && or || list, or if the command's return status is being inverted using !.

siehe z.B. hier.

Möglicherweise helfen im Script auch grep '/>' statt "/>" oder "\/\>". Kann ich mangels Linux grad nicht schauen.

bye
Frank

vdr: Silverstone GD01 MRX mit ImonLCD, Asus M4V78 ATI-Graka Board, AMD 4850e,  FF Technotrand S2300 modded, LG, 40GB IDE 2,5", 500GB SATA, Samsung DVD-Brenner (easyvdr 0.806 mit lirc-0.8.6

Zalman MS1000-2 mit 6 Swap-Bays für 3,5" Platten, Core i3-2120, ASUS P8P67, 4GB Kongston, Zotac GT430 passiv, LG DVD Brenner, TBS 6981 Dual DVB-S2, easyvdr 096-B1 mit linux-media-tbs-dkms
Zitieren
#4
Du solltest wirklich besser ein '/>' verwenden, der Tipp ist sinnvoll.

Ansonsten wär ja interessant wie das script ausschaut.
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: