ls Linux-Befehl: So filtern Sie Dateien in anderen Verzeichnissen

ls Linux-Befehl: So filtern Sie Dateien in anderen Verzeichnissen

Ich weiß, was ls folder/ich ls *abc*unter Linux mache. Ich möchte einige Dateien in einem bestimmten Ordner herausfiltern.

Ich habe dies versucht:, ls folder/ *abcaber es gibt keine korrekten Werte zurück.

Irgendeine Idee?

Danke

Antwort1

Versuchen Sie es mit „find“.

find folder/ -d 1 -name '*abc'

folder/: Zu suchender Pfad

-d 1: Nur eine Ebene tiefer suchen. Dadurch wird verhindert, dass alle Unterverzeichnisse unterhalb des gesuchten Ordners durchsucht werden. Entfernen Sie diese Option, wenn Sie dieses Verhalten wünschen.

-name '*abc': Das zu suchende Muster.

Nähere Informationen erhalten Sie unter man find.

Antwort2

Wie bereits erwähnt, findkönnte dies eine bessere Option sein, aber um das gewünschte Ergebnis mit zu erzielen ls, versuchen Sie, mit zu filtern grep:

user@host:/etc$ ls homeassistant | grep config
config
configuration.yaml
configuration_bak.yaml
dockerconfig
dockerconfig.bak

.. Da dies alle Dateien und Ordner zurückgibt, die das Wort "Konfiguration" aus dem VerzeichnisHeimassistent.

verwandte Informationen