Czy ktoś jest w stanie wyjaśnić mi następujący fenomen?
bash-5.2$ which sh
/usr/bin/sh
bash-5.2$ ls -lah /usr/bin/sh
lrwxrwxrwx 1 root root 20 Dec 12 19:17 /usr/bin/sh -> /etc/alternatives/sh
bash-5.2$ ls -lah /etc/alternatives/sh
lrwxrwxrwx 1 root root 13 Apr 23 2023 /etc/alternatives/sh -> /usr/bin/bash
bash-5.2$ ls -lah /usr/bin/bash
-rwxr-xr-x 1 root root 1.3M Apr 23 2023 /usr/bin/bash
bash-5.2$ sh
sh-5.2$/usr/bin/sh pośrednio wskazuje na /usr/bin/bash, mimo to po wykonaniu sh zgłasza się sh. Inb4 - tak, doczytałem że korzystanie z update-alternatives do tego to nie jest najlepszy pomysł, ale z tak wyglądającymi symlinkami powinno działać.
@6502 Powinno działać, ale możesz mieć PATH ze ścieżką bezpośrednio do sh o wyższym priorytecie (zakładam, że /bin). Tak gdybam. I fakt, alternatives może namieszać.
Co do alternatives per se, preferuję asdf, właśnie dlatego, że mniej się może zepsuć
@6502
PATH order precedence is determined first to last, with earlier entries having priority.
Sprawdź co masz w zmiennej PATH
@ataxbras @koszotorobur
Wszystko jasne:
bash-5.2$ sh --version
GNU bash, version 5.2.15(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
To od początku był bash, ale z promptem "sh", zakładam że jest ustawiany na podstawie polecenia uruchamiającego konkretnego shella.
Zaloguj się aby komentować