Ich habe ein Problem mit einem Grep-Befehl. Ich habe 3 Aufgaben:Wie kann ich grep, um Ergebnisse von ls zu filtern?
a) finden und zeigen nur dir das für "ls -l"
ls -l | grep ^d # which works good
b) nur Dateien, die mit einer Ziffer beginnt Namen
ls | grep ^[0-9]
funktioniert auch, aber Für Dateien und Verzeichnisse muss es nur für Dateien funktionieren, wie kann ich das machen?
c) Dateien, die ein "x" rechts für Gruppen
ls -l | grep "^-*x" # it shows every file
Wie ich diese Befehle für b machen) und c) funktioniert haben?
Parsing 'ls' ist eine schlechte Idee dafür. Verwenden Sie den 'find' Befehl. – anubhava
... siehe [Warum sollten Sie die Ausgabe von 'ls' nicht analysieren (http://mywiki.wooledge.org/ParsingLs) im Wooledge-Wiki und [UsingFind] (http: //mywiki.wooledge. org/UsingFind). –