Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Mit grep und regulärem Ausdruck zeilen Ausgeben mit bestimmten Zeichenmuster

Mitglied: FISI-Azubi2010

FISI-Azubi2010 (Level 1) - Jetzt verbinden

21.04.2009, aktualisiert 11:28 Uhr, 11084 Aufrufe, 11 Kommentare

Dieser Beitrag beschäftigt sich mit einem regulären Ausdruck zum finden bestimmter Zeichenmuster innerhalb einer Datei auf einem Unix-System. Hierzu wird der Befehl grep verwendet

Hallo Admingemeinde,

zur Zeit bin ich in einer Abteilung die sich stark mit Unix und dessen Derivaten beschäftigt. Damit ich Unix Fit gemacht werde soll ich einige Aufgaben lösen was bisher auch ganz gut geklappt hat. Nun bin ich an einer Aufgabe wo weder Manpages, die Kollegen um mich rum oder mehrere Suchanfragen bei meinem Freund Google helfen können. Wir sitzen zu dritt seit Stunden an dieser Aufgabe. Deshalb wende ich mich ich mich hier an dieses Forum. Wie der Titel schon sagt geht es um Zeichenmuster das mit grep und regulärem Ausdruck aus einer Datei gelesen werden soll.

Die Situation und Aufgabenstellung etwas genauer Erörtert:

- Es existiert eine Datei die mit Vornamen gefüllt ist
- 2 Azubis und ein ausgelernter FISI denen nichts mehr einfällt und der jenige ders könnte ist die nächsten 3Wochen nicht da

Die Aufgabe lautet nun die Vornamen auszugeben:

- die das Zeichen "a" und "b" in Groß- Kleinschreibung enthalten

also

z.B A oder B am Anfang und ein "a" und ein"b" irgentwo im weiteren verlauf der Zeile

Barbara oder Abdelbahi wären z.B. solche Strings


Was haben wir z.B versucht:

grep -E "[AB] [ab]" Dateiname

Vieleicht hat hier jemand einen Ausdruck der diese Kriterien erfüllt oder kann uns auf den richtigen Weg bringen.

Danke im voraus und Gruß

FISI-AZUBI2010
Mitglied: godlie
21.04.2009 um 12:11 Uhr
Hallo

01.
grep [abAB] test.txt
sucht nach a,b,A,B in der Datei oder hab ich an der Aufgabenstellung was aflsch ausgelegt
Bitte warten ..
Mitglied: FISI-Azubi2010
21.04.2009 um 12:27 Uhr
Hi godlie,

Danke für deine Antwort aber diese Zeile würde alle ausgeben die am Anfang mit a A oder b B beginnen.

Das ist aber nur eins der in der Aufgabenstellung geforderten Kriterien.

Es soll nach dem Anfangsbuchstaben irgentwo im Verlauf der Zeile noch mal ein a und auch irgentwo ein b stehen.


Diese Aufgabe macht mich noch wahnsinnig das ist richtig was zum Knobeln

Ich hab auch schon versucht das ganze mit Pipes zu realisieren da man ja mit Pipes immer ne UND-Bedingung hinbekommt aber selbst damit ists noch kompliziert
Bitte warten ..
Mitglied: godlie
21.04.2009 um 12:37 Uhr
Also:

01.
grep ^A.*a sucht alles was A am Anfang hat und ein a enthält 
02.
grep ^B.*b sucht alles was B am Anfang hat und ein b enthält.
wie wärs mit der Lösung
Bitte warten ..
Mitglied: LotPings
21.04.2009 um 12:38 Uhr
Es gibt im internet eine ganze Menge Hilfe-Seiten rund um Regular Expressions.
Leider gibt es auch einige verschiedene Dialekte.

Grundsätzlich gibt es die Anker "^" für den Zeilenanfang und "$" fürs Zeilenende.
Der Punkt steht für ein beliebiges Zeichen und der Asterisk * für eine beliebige Anzahl des vorherigen Elements.

Wenn Ihr also pro Zeile nur einen Namen habt, ist das Ganze recht einfach.

Gruß
LotPings
Bitte warten ..
Mitglied: godlie
21.04.2009 um 12:59 Uhr
Sodala jetzt ist das ding fertig.

01.
grep -E "^A.+a|^B.+b" test.txt
Aber darauf könnte man kommen wenn man mal in eine man page von grep oder egrep reinschaut.
Dort sind nämlich die Regular Expressions kurz erklärt.

edit:
Achja das ganze hat mit Kaffeetrinken nicht mal 30minuten gedauert.
Bitte warten ..
Mitglied: LotPings
21.04.2009 um 13:15 Uhr
Hallo godie,

dann hat aber das Kaffee trinken zuviel Anteil gehabt

deine RegExp findet z.Bspw nicht den Aaron oder die Bertha.

Immer noch von einem Namen ohne Leerzeichen pro Zeile ausgehend
grep -E "^[AB].*[ab].*$" test.txt
Aber das haben Die OPs inzwische bestimmt selber herausgefunden.
Bitte warten ..
Mitglied: godlie
21.04.2009 um 13:25 Uhr
Hm da war dann doch ncoh ein Denkfehler
Bitte warten ..
Mitglied: FISI-Azubi2010
21.04.2009 um 15:38 Uhr
Hi und danke für die Antworten,

wir haben jetzt das ganze über mehrere Pipes gelöst ist zwar nicht schön aber es funktioniert erstmal. ; )
Dennoch wäre es cool zu wissen wie man das als regular expression macht.

Gruß FISI-AZUBI2010
Bitte warten ..
Mitglied: FISI-Azubi2010
21.04.2009 um 15:57 Uhr
Zitat von LotPings:
Hallo godie,

dann hat aber das Kaffee trinken zuviel Anteil gehabt

deine RegExp findet z.Bspw nicht den Aaron oder die Bertha.

Immer noch von einem Namen ohne Leerzeichen pro Zeile ausgehend
> grep -E "^[AB].*[ab].*$" test.txt 
> 
Aber das haben Die OPs inzwische bestimmt selber herausgefunden.

ähm Aaron und Bertha entsprechen ebenfalls nicht den Kriterien da sie "b" im weiteren verlauf der Zeile nicht haben

Es muss am Anfang ein A oder ein B sein und dann im verlauf ein "a" und ein "b"
Bitte warten ..
Mitglied: LotPings
21.04.2009 um 16:39 Uhr
Zitat von FISI-Azubi2010:
ähm Aaron und Bertha entsprechen ebenfalls nicht den Kriterien
da sie "b" im weiteren verlauf der Zeile nicht haben

Es muss am Anfang ein A oder ein B sein und dann im verlauf ein
"a" und ein "b"


Jaja, immer diese Schlauberger die selber nicht richtig lesen können

c:\>type Namensliste.txt 
Abraham 
Barbara 
Abdelbahi 
Aaron 
Beathe 
Bertha 
Rainer 
Sigismund 
Habakuk 
 
c:\>grep -E "^[AB].*((a.*b)|(b.*a)).*$" Namensliste.txt 
Abraham 
Barbara 
Abdelbahi
Bei meinem Grep (WindowsPort) funktioniert das so.

Gruß
Bitte warten ..
Mitglied: FISI-Azubi2010
23.04.2009 um 13:17 Uhr
Hi Lotpings,

dein Ausdruck funktiniert danke
So Problem gelöst.

Die Lösung ist grep -E "^[AB].*((a.*b)|(b.*a)).*$" Dateiname
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch: Bestimmte Zeile in Textdatein ausgeben?

gelöst Frage von TaubeTecIncBatch & Shell4 Kommentare

Guten Tag, so habe ich ein Programm und 2 Dateien. Das Programm soll in der Datei1 ein bestimmtes wort ...

VB for Applications

Problem bei der Erstellung eines Regulären Ausdruckes

gelöst Frage von spawny2407VB for Applications2 Kommentare

Hallo liebe Gemeinde, habe ein nicht endendes Problem. Da ich auf dem Gebiet der Regulären Ausdrucke sehr neu bin, ...

Exchange Server

Reguläre Ausdrücke in Transportregeln EXCH 2010

Frage von has.andExchange Server

Guten Morgen, Ich arbeite gerade an einer Transportregel die mir Mails, die an gewisse Adressen, mit bestimmten Betreff gesendet ...

Datenbanken

Reguläre Ausdrücke in MSSQL dynamisch zusammensetzen

Frage von AndroxinDatenbanken2 Kommentare

Hallo, ich habe eine Tabelle mit einer Spalte, deren Inhalt ich mit regulären Ausdrücken einschränken möchte. Momentan geht es ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 3 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Server
Standortvernetzung zu einem Strato VServer (Windows)
Frage von matzefratze81Windows Server10 Kommentare

Moin, ich komme aus einem Enterprise-Umfeld und habe den Fehler gemacht, dass ich mich auf ein kleines Unternehmen eingelassen ...

Grafikkarten & Monitore
4k EIZO Monitor, Fernseher und Splitter
Frage von LerxxeyGrafikkarten & Monitore9 Kommentare

Hallo Zusammen, vielleicht könnt ihr mir bei einem Problem helfen wo ich einfach nicht mehr weiterkomme Und zwar haben ...

TK-Netze & Geräte
Fax im Betrieb
Frage von gansa28TK-Netze & Geräte6 Kommentare

Hallo zusammen, Endlich wurden meine Gebete Erhört und der Rechner meines Bekannten dem ich etwas unter die Arme greife, ...

Humor (lol)
Nerd Zeitschrift gesucht
Frage von 2SeitenHumor (lol)6 Kommentare

Hey Zusammen, Ich suche eine Zeitschrift bei der es ums technische Basteln geht. Pc zusammenschrauben, Arduino Projekte, Server Tipps ...