Bash: pobierz bieżącą nazwę katalogu roboczego, ale nie pełną ścieżkę

18

Wiem, że pwdwydrukuje pełną ścieżkę bieżącego katalogu roboczego, ale chcę wydrukować tylko nazwę katalogu. Czy istnieje proste polecenie, aby to zrobić bez analizowania pwd?

użytkownik214632
źródło

Odpowiedzi:

27

Tak jest. Możesz użyć czystej bash:

echo "${PWD##*/}"

lub lepiej, aby uniknąć sytuacji, w której możesz być w środku -e katalogu:

printf '%s\n' "${PWD##*/}"

(dzięki @gniourf_gniourf za drugą sugestię).

Lub możesz użyć basenamenarzędzia:

basename "$PWD"
Radu Rădeanu
źródło
2
Takżebasename ~+
Steven Penny
możesz także zrobićecho "${PWD##*/}"
AMIC MING
2
1. co to jest katalog -e 2. „$ {PWD ## * /}” jak to działa?
Sonique