basename

Z Linux Wiki
Skocz do: nawigacja, szukaj
$ basename /etc/X11/xorg.conf  
xorg.conf

basename – polecenie występujące w GNU/Linuksie i większości innych systemów wzorowanych na Uniksie, używane głównie w skryptach.

Usuwa z ciągu znaków podanego w pierwszym parametrze (lub kilku parametrach, jeśli użyto przełącznika -a lub --multiple) wszystkie znaki od początku do ostatniego ukośnika (/) i wyświetla końcowy ciąg (lub ciągi) na standardowe wyjście. Ponadto jeśli nie użyto tego przełącznika i podano jedynie jeden ciąg, jako drugi parametr może zostać podany ciąg znaków, który zostanie usunięty z końca tekstu, o ile na nim występuje; jeśli użyto wspomnianego przełącznika i podano kilka ciągów, w celu otrzymania takiego efektu należy użyć przełącznika -s lub --suffix.

Użycie[edytuj]

$ basename [przełączniki] <ciąg> [sufiks]
$ basename [przełączniki] -a <ciąg> ...

Przełączniki[edytuj]

  • -a lub --multiple – traktuje kolejne parametry jako kolejne ciągi do obcięcia;
  • -s X lub --suffix=X – używa X jako przyrostka, który zostanie usunięty z końca każdego podanego ciągu, zbędne, jeśli nie użyto poprzedniego przełącznika, przyrostek może tedy zostać podany w drugim parametrze;
  • -z lub --zero – oddziela kolejne obcięte ciągi znakiem NULL, nie znakiem nowej linii;
  • --help – wyświetla tekst pomocy;
  • --version – wyświetla wersję narzędzia.

Przykłady[edytuj]

Proste obcięcie początku[edytuj]

$ basename /etc/X11/xorg.conf  
xorg.conf

Obcięcie początku i końcówki[edytuj]

$ basename /etc/locale.gen .gen
locale

Obcięcie początku paru ciągów[edytuj]

$ basename -a /etc/motd /etc/fstab /home/user/.bashrc /bin/bash
motd
fstab
.bashrc
bash

Ocięcie początku i końcówki paru ciągów[edytuj]

$ basename -as .png  /home/user/screeny/* 
Monitor systemu - partycje
Monitor systemu - zasoby
Monitor systemu
Nemo
screenshot-area-2015-11-14-130753
screenshot-window-2015-11-15-234538
screenshot-window-2015-11-15-234710
screenshot-window-2015-11-15-235335
screenshot-window-2015-12-12-210406
screenshot-window-2015-12-13-102553
screenshot-window-2015-12-13-105138
screenshot-window-2015-12-13-105250
screenshot-window-2015-12-13-105333