Wie kann ich beispielsweise replizieren:
ls *.txt
Wenn in meinen Textdateien die .txt
Endung fehlt und die Erweiterungen in Bezug auf Erweiterungen genauso aussehen wie in vielen anderen Dateitypen?
Ist es alternativ möglich, nur die Dateien aufzulisten, die KEINE Dateierweiterung haben?
command-line
file-format
ls
user82212
quelle
quelle
grep
kann mit jedem Befehl verwendet werden. Das|
Symbol wird verwendet, um die Ausgabe von einem Befehl an einen anderen zu übergeben, undgrep
stimmt mit Zeilen überein, die bestimmten Text enthalten (oder nicht enthalten). Wenn Sie jedoch den Text ändern möchten (außer nur übereinstimmende Zeilen zu drucken), sollten Sie sich densed
Befehl ansehen .ls --classify | grep -v '/'.'*'
Mit können
ls -ignore="PATTERN"
Sie Dateien von einem ls-Ergebnis ausschließen.Zum Beispiel,
ls --ignore="*.txt"
um txt-Dateien zu ignorieren.quelle
Negieren Sie einfach Ihr Muster (Hinweis:
shopt -s extglob
ist erforderlich).So zeigen Sie alle Dateien ohne Erweiterung an:
txt
Versuchen Sie Folgendes , um Nicht- Dateien anzuzeigen:quelle
Der Befehl
ls -SX1|less
wird nach Erweiterung in einer einzelnen Spalte sortiert und Dateien ohne eine werden nach oben verschoben. Für Verzeichnisse mit mehr als einigen Dateien wird empfohlen, weniger als im Beispiel durchzuleiten, um die Ausgabe auf einen Bildschirm zu beschränken, der gleichzeitig voll ist.quelle
Ich bevorzuge die Verwendung von grep für einfache Listungsvorgänge.
Um die Verwendung zu vermeiden
grep
,Ich empfehle die Verwendung
ls !(*.*)
, um Dateien ohne Dateierweiterung zu finden, undls -I "*.gz" -I "*.tz"
oderls --ignore={"*.jpg","*.png","*.bmp"}
um bestimmte Dateierweiterungen auszuschließen
quelle