2016-04-12 5 views
0

Well-Struktur ist mein Ordnerawk mit regex in es nicht richtig hier

enter image description here

Und hier ist mein Problem

enter image description here

Ich würde gerne wissen, funktioniert wie ist das möglich, dass, wenn der Befehl find in forscht .. der Befehl awk ist in der Lage, diese Dateien (Datei (b | c)) aus der Ausgabe zu grep, die im Verzeichnis dir befinden, aber wenn der Befehl find doe s Forschung in f_ignore2/dir es funktioniert nicht. Es ist komisch und ich weiß nicht, was ich tun soll. Hast du irgendwelche Ideen?

+0

müssen Sie nur Datei und Datei c überspringen? – ClaudioM

+0

Nein, anstelle von 'Datei (b | c)' könnte jeder andere Regex sein, würde aber gerne wissen, warum es nicht in dir Verzeichnis funktioniert .. während in f_ignore2 oder in hodnoceni funktioniert es gut –

+0

für Schleife Bedingung ist ' k <= NF' nicht 'k <= NR'. – 7171u

Antwort

2

Warum verwenden Sie nicht stattdessen awk?

awk -F/ '!/\/file[bc]/' 

drucken alle Linien außer Linien, die Zeichenfolge /fileb oder /filec hat.

+1

Keine Notwendigkeit für die Klammern oder den '{print}' - Block: 'awk -F/'!/\/File [bc] /'' wäre in Ordnung. –