2016-05-04 8 views
0

Wie listet ich übereinstimmende Ergebnisse in einem angegebenen Verzeichnis auf?ls zum Auflisten von Übereinstimmungen im angegebenen Verzeichnis

Auf meinem Ubuntu-Server listet ich den Inhalt eines Verzeichnisses korrekt auf. Mein Arbeitsverzeichnis ist/var/crash.

#pwd 
/var/crash 
# ls -l 
-rw-r--r-- 1 bob bob 121876 Aug 8 2015 results.xml 
-rw-rw-r-- 1 bob bob  126 Nov 3 2015 start.txt 
-rw-rw-r-- 1 bob bob  43 Jul 28 2015 exit.txt 

Sagen wir, ich alle Dateien auflisten möchten, die ‚Teer‘ enthalten. In diesem Beispiel sollte es nur ein Spiel sein, das heißt start.txt

# ls -l *tar* 
-rw-rw-r-- 1 bob bob  126 Nov 3 2015 start.txt 

All gut so weit. Wenn ich jedoch das Verzeichnis (/ var/crash) einschließe, listet es alle Dateien auf.

# ls -l *tar* /var/crash 
-rw-r--r-- 1 bob bob 121876 Aug 8 2015 results.xml 
-rw-rw-r-- 1 bob bob  126 Nov 3 2015 start.txt 
-rw-rw-r-- 1 bob bob  43 Jul 28 2015 exit.txt 

ich meine Syntax zu raten ist ls sagen alle Spiele von tar und alles in/var/crash aufzulisten. Wie lautet die richtige Syntax zum Auflisten von Übereinstimmungen in einem angegebenen Verzeichnis?

Antwort

2

Sie müssen das Muster zusammen mit dem Verzeichnis angeben:

ls -l /var/crash/*tar* 

Andernfalls mit ls -l *tar* /var/crash Sie ls, um gegen zwei Parameter sagen: /var/crash und *tar*. In der Tat wird *tar* erweitert, bevor ls es erreicht, so dass es möglicherweise mehr Parameter für ls gibt.

+2

Um mehr über Globbing zu sehen: http://mywiki.wooledge.org/glob – andlrc

Verwandte Themen