Basename: Unterschied zwischen den Versionen
Erscheinungsbild
K Textersetzung - „line>“ durch „line copy>“ |
|||
(20 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 4: | Zeile 4: | ||
'''basename''' - gibt den reinen Dateinamen zurück und schneidet dabei vorangestellte absolute oder relative Pfade ab | '''basename''' - gibt den reinen Dateinamen zurück und schneidet dabei vorangestellte absolute oder relative Pfade ab | ||
* Bei Angabe eines Suffix, beispielsweise der Dateiendung, wird auch dieses entfernt | * Bei Angabe eines Suffix, beispielsweise der Dateiendung, wird auch dieses entfernt | ||
* Das Programm basename kann in '''[[Linux/Shells und Shell-Skripte|Shell-Skripten]]''' sehr hilfreich sein | |||
* Möchte man hingegen den vollständigen Pfad erhalten, benötigt man den Befehl '''[[dirname]]''' | |||
* Den NAMEn ohne führende Verzeichnisse ausgeben. Wenn angegeben, auch SUFFIX entfernen | |||
* Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich | |||
== Installation == | == Installation == | ||
'''Basename''' ist Teil von [[GNU Core Utilities]] | |||
== Aufruf == | == Aufruf == | ||
<syntaxhighlight lang="bash" highlight="1-3" line> | <syntaxhighlight lang="bash" highlight="1-3" line copy> | ||
basename [OPTIONEN] NAME [SUFFIX] | basename [OPTIONEN] NAME [SUFFIX] | ||
basename NAME [SUFFIX] | basename NAME [SUFFIX] | ||
Zeile 36: | Zeile 34: | ||
|} | |} | ||
=== | == Anwendung == | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
basename /etc/passwd | |||
passwd | |||
</syntaxhighlight> | |||
== | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
basename ./datei | |||
datei | |||
</syntaxhighlight> | |||
== | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
basename ~/datei | |||
datei | |||
</syntaxhighlight> | |||
== | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
basename ../andererUser/Musik/lied.mp3 | |||
lied.mp3 | |||
</syntaxhighlight> | |||
=== Dateiendung entfernen === | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
basename datei.txt .txt | |||
datei | |||
</syntaxhighlight> | |||
=== Mehrere Dateien === | |||
Werden mit der Option --multiple mehrere Dateien angegeben und soll dabei eine Dateiendung entfernt werden, muss diese mit der Option --suffix= angegeben werden: | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
basename --suffix=.list --multiple /etc/apt/sources.list.d/*.list | |||
anyone-ppa-trusty | |||
localrepo | |||
</syntaxhighlight> | |||
=== | === Beispiele === | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
basename /usr/bin/sort | |||
-> ''sort'' | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" highlight="1" line copy> | |||
<syntaxhighlight lang="bash" highlight="1" line> | basename include/stdio.h .h | ||
-> ''stdio'' | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
basename -s .h include/stdio.h | |||
-> ''stdio'' | |||
</syntaxhighlight> | |||
== | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
basename -a irgendwas/str1 irgendwas/str2 | |||
-> ''str1'', gefolgt von ''str2'' | |||
</syntaxhighlight> | |||
<noinclude> | <noinclude> | ||
== Anhang == | == Anhang == | ||
=== Siehe auch === | === Siehe auch === | ||
Zeile 76: | Zeile 102: | ||
=== Links === | === Links === | ||
==== Projekt ==== | ==== Projekt ==== | ||
* [[GNU Core Utilities]] | |||
==== Weblinks ==== | ==== Weblinks ==== | ||
* https://wiki.ubuntuusers.de/basename | |||
{{DISPLAYTITLE:basename}} | {{DISPLAYTITLE:basename}} | ||
Zeile 85: | Zeile 113: | ||
[[Kategorie:Coreutils]] | [[Kategorie:Coreutils]] | ||
</noinclude> | </noinclude> | ||
Aktuelle Version vom 11. Mai 2025, 13:39 Uhr
basename - Verzeichnis und Suffix von Dateinamen entfernen
Beschreibung
basename - gibt den reinen Dateinamen zurück und schneidet dabei vorangestellte absolute oder relative Pfade ab
- Bei Angabe eines Suffix, beispielsweise der Dateiendung, wird auch dieses entfernt
- Das Programm basename kann in Shell-Skripten sehr hilfreich sein
- Möchte man hingegen den vollständigen Pfad erhalten, benötigt man den Befehl dirname
- Den NAMEn ohne führende Verzeichnisse ausgeben. Wenn angegeben, auch SUFFIX entfernen
- Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich
Installation
Basename ist Teil von GNU Core Utilities
Aufruf
basename [OPTIONEN] NAME [SUFFIX]
basename NAME [SUFFIX]
basename OPTION… NAME…
Optionen
Unix | GNU | Parameter | Beschreibung |
---|---|---|---|
-a | --multiple | Ermöglicht die Angabe mehrerer Dateien. Mehrere Argumente unterstützen und jedes als NAME behandeln | |
-s | --suffix= | ENDUNG | Entfernt das angegebene Suffix. Ein nachfolgendes SUFFIX entfernen; bezieht -a ein |
--help | gibt Informationen zum Befehl. zeigt Hilfeinformationen an und beendet das Programm | ||
--version | gibt Informationen zur Version. gibt Versionsinformationen aus und beendet das Programm | ||
-z | --zero | Jede Ausgabezeile mit einem Nullbyte statt des Zeilenumbruchs abschließen |
Anwendung
basename /etc/passwd
passwd
basename ./datei
datei
basename ~/datei
datei
basename ../andererUser/Musik/lied.mp3
lied.mp3
Dateiendung entfernen
basename datei.txt .txt
datei
Mehrere Dateien
Werden mit der Option --multiple mehrere Dateien angegeben und soll dabei eine Dateiendung entfernt werden, muss diese mit der Option --suffix= angegeben werden:
basename --suffix=.list --multiple /etc/apt/sources.list.d/*.list
anyone-ppa-trusty
localrepo
Beispiele
basename /usr/bin/sort
-> ''sort''
basename include/stdio.h .h
-> ''stdio''
basename -s .h include/stdio.h
-> ''stdio''
basename -a irgendwas/str1 irgendwas/str2
-> ''str1'', gefolgt von ''str2''
Anhang
Siehe auch
Dokumentation
- Man-Page
- Info-Page