Zum Inhalt springen

Basename: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „line>“ durch „line copy>“
 
(46 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== 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.
'''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 '''[[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


Das Programm basename kann in [[Shells_und_Shell-Skripte|Shell-Skripten]] sehr hilfreich sein. Möchte man hingegen den vollständigen Pfad erhalten, benötigt man den Befehl dirname.
== Installation ==
 
'''Basename''' ist Teil von [[GNU Core Utilities]]
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 ==
== Aufruf ==
== Syntax ==
<syntaxhighlight lang="bash" highlight="1-3" line copy>
<syntaxhighlight lang="bash" line>
basename [OPTIONEN] NAME [SUFFIX]
basename [OPTIONEN] NAME [SUFFIX]
basename NAME [SUFFIX]
basename NAME [SUFFIX]
basename OPTION… NAME…
basename OPTION… NAME…
</syntaxhighlight>
</syntaxhighlight>
=== Optionen ===
=== Optionen ===
{| class="wikitable"
{| class="wikitable sortable options gnu"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
|-
! Option  !! Beschreibung
| -a || --multiple || || Ermöglicht die Angabe mehrerer Dateien. Mehrere Argumente unterstützen und jedes als NAME behandeln
|-
|-
| -a, --multiple || ermöglicht die Angabe mehrerer Dateien
| -s || --suffix= || ENDUNG || Entfernt das angegebene Suffix. Ein nachfolgendes SUFFIX entfernen; bezieht -a ein
|-
|-
| -s, --suffix= || entfernt das angegebene Suffix
| || --help || || gibt Informationen zum Befehl. zeigt Hilfeinformationen an und beendet das Programm
|-
|-
| --help || gibt Informationen zum Befehl
| || --version || || gibt Informationen zur Version. gibt Versionsinformationen aus und beendet das Programm
|-
|-
| --version || gibt Informationen zur Version
| -z || --zero || || Jede Ausgabezeile mit einem Nullbyte statt des Zeilenumbruchs abschließen
|}
|}


=== Parameter ===
=== Umgebungsvariablen ===
=== Exit-Status ===
== Anwendung ==
== Anwendung ==
$ '''basename /etc/passwd'''
<syntaxhighlight lang="bash" highlight="1" line copy>
passwd
basename /etc/passwd
passwd
</syntaxhighlight>
 
<syntaxhighlight lang="bash" highlight="1" line copy>
basename ./datei
datei
</syntaxhighlight>


$ '''basename ./datei'''
<syntaxhighlight lang="bash" highlight="1" line copy>
basename ~/datei
  datei
  datei
</syntaxhighlight>


$ '''basename ~/datei'''
<syntaxhighlight lang="bash" highlight="1" line copy>
datei
basename ../andererUser/Musik/lied.mp3
 
$ '''basename ../andererUser/Musik/lied.mp3'''
  lied.mp3
  lied.mp3
</syntaxhighlight>


=== Dateiendung entfernen ===
=== Dateiendung entfernen ===
$ '''basename datei.txt .txt'''
<syntaxhighlight lang="bash" highlight="1" line copy>
basename datei.txt .txt
  datei
  datei
</syntaxhighlight>


=== Mehrere Dateien ===
=== 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:
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'''
<syntaxhighlight lang="bash" highlight="1" line copy>
basename --suffix=.list --multiple /etc/apt/sources.list.d/*.list
  anyone-ppa-trusty
  anyone-ppa-trusty
  localrepo
  localrepo
</syntaxhighlight>




BEISPIELE
=== Beispiele ===
<syntaxhighlight lang="bash" highlight="1" line copy>
basename /usr/bin/sort
basename /usr/bin/sort
-> »sort«
-> ''sort''
</syntaxhighlight>


<syntaxhighlight lang="bash" highlight="1" line copy>
basename include/stdio.h .h
basename include/stdio.h .h
-> »stdio«
-> ''stdio''
</syntaxhighlight>


<syntaxhighlight lang="bash" highlight="1" line copy>
basename -s .h include/stdio.h
basename -s .h include/stdio.h
-> »stdio«
-> ''stdio''
</syntaxhighlight>


<syntaxhighlight lang="bash" highlight="1" line copy>
basename -a irgendwas/str1 irgendwas/str2
basename -a irgendwas/str1 irgendwas/str2
-> »str1«, gefolgt von »str2«
-> ''str1'', gefolgt von ''str2''
</syntaxhighlight>


== Konfiguration ==
=== Dateien ===
<noinclude>
<noinclude>


== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
==== Dokumentation ====
=== Dokumentation ===
 
; Man-Page
;Info-Page
=== Links ===
==== Projekt ====
* [[GNU Core Utilities]]


===== Man-Pages =====
==== Weblinks ====
===== Info-Pages =====
* https://wiki.ubuntuusers.de/basename
==== Links ====
===== Projekt =====
===== Weblinks =====
# https://wiki.ubuntuusers.de/basename


{{DISPLAYTITLE:basename}}
{{DISPLAYTITLE:basename}}
Zeile 94: Zeile 113:
[[Kategorie:Coreutils]]
[[Kategorie:Coreutils]]
</noinclude>
</noinclude>
= TMP =
-a, --multiple
Mehrere Argumente unterstützen und jedes als NAME behandeln
-s, --suffix=ENDUNG
Ein nachfolgendes SUFFIX entfernen; bezieht -a ein
-z, --zero
Jede Ausgabezeile mit einem Nullbyte statt des Zeilenumbruchs abschließen
--help zeigt Hilfeinformationen an und beendet das Programm.
--version
gibt Versionsinformationen aus und beendet das Programm.

Aktuelle Version vom 11. Mai 2025, 12: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

Links

Projekt

Weblinks