Startseite > Datei- und Verzeichnisverwaltung > basename

basename: Dateinamen aus Pfaden extrahieren

Der Befehl basename extrahiert den reinen Dateinamen oder Verzeichnisnamen aus einem gegebenen Dateipfad, indem er den Verzeichnisteil entfernt. Optional kann auch ein angegebenes Suffix entfernt werden. Dies ist besonders nützlich bei der Verarbeitung von Dateipfaden in Shell-Skripten.

Übersicht

basename ist ein Dienstprogramm, das den Dateinamen aus einem Dateipfad extrahiert und den Verzeichnispfad weglässt. Mit der Option `-a` können mehrere Pfade gleichzeitig verarbeitet werden, und durch Angabe eines Suffixes als zweites Argument kann dieses vom Dateinamen entfernt werden.

Hauptfunktionen

  • Extrahieren von Dateinamen aus Dateipfaden
  • Entfernen angegebener Suffixe
  • Gleichzeitige Verarbeitung mehrerer Pfade (Option -a)

Hauptoptionen

Der Befehl basename nimmt den Dateipfad und ein optionales Suffix als Argumente entgegen und kann mit der Option `-a` mehrere Pfade gleichzeitig verarbeiten.

Argumente und Optionen

Erzeugter Befehl:

Kombinieren Sie die Befehle.

Beschreibung:

`basename` Führen Sie den Befehl aus.

Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.

Anwendungsbeispiele

Erfahren Sie anhand verschiedener Anwendungsbeispiele des Befehls basename, wie Dateinamen aus Dateipfaden extrahiert werden.

Grundlegende Dateinamenextraktion

basename /home/user/documents/report.pdf

Extrahiert nur den Dateinamen aus dem gegebenen Pfad, wobei der Verzeichnisteil weggelassen wird.

Suffix entfernen

basename /home/user/documents/report.pdf .pdf

Entfernt das angegebene Suffix vom Dateinamen. Wenn das Suffix nicht übereinstimmt, wird es nicht entfernt.

Mehrere Dateinamen extrahieren (Option -a)

basename -a /path/to/file1.txt /another/path/file2.log

Verwendet die Option `-a`, um Dateinamen aus mehreren Dateipfaden zu extrahieren.

Mehrere Dateinamen und Suffix entfernen (Option -a)

basename -a /path/to/image.jpg /another/path/photo.png .jpg

Verwendet die Option `-a` zusammen mit einem angegebenen Suffix, um dieses Suffix von mehreren Dateinamen zu entfernen. Das Suffix wird auf alle Pfade angewendet.

Verarbeitung von Verzeichnispfaden

basename /home/user/documents/

Wenn der letzte Teil des Pfades ein Verzeichnis ist, wird der Name dieses Verzeichnisses zurückgegeben.

Tipps & Hinweise

Der Befehl basename ist sehr nützlich bei der Handhabung von Dateipfaden in Shell-Skripten und kann in Kombination mit dem Befehl dirname verwendet werden, um Dateipfade effektiv zu trennen.

Skriptnutzung

Nützlich, um den Dateinamen ohne Erweiterung aus einer Liste von Dateien zu erhalten.

  • for f in *.txt; do echo $(basename "$f" .txt); done
  • file_path="/var/log/syslog.20231026"; filename=$(basename "$file_path"); echo "$filename"

Kombination mit dirname

Durch die gemeinsame Verwendung von dirname und basename können der Verzeichnisteil und der Dateinamens-Teil eines Dateipfads getrennt werden.

  • Pfad: /home/user/file.txt
  • dirname Ergebnis: /home/user
  • basename Ergebnis: file.txt

Behandlung von abschließenden Schrägstrichen

basename behandelt den letzten Bestandteil eines Pfades korrekt als Dateinamen, auch wenn ein abschließender Schrägstrich vorhanden ist. Zum Beispiel gibt `basename /path/to/dir/` `dir` zurück.


Verwandte Befehle

Funktional ähnliche oder häufig zusammen verwendete Befehle.


Gleiche Kategorie Befehle