Użyłem następującego polecenia, aby sprawdzić wersje Pythona podane w tej odpowiedzi . Działa z wyjątkiem jednego błędu pokazanego poniżej. Czy ktoś może wyjaśnić, dlaczego?
$ sudo find / -type f -executable -iname 'python*' -exec file -i '{}' \; \
| awk -F: '/x-executable; charset=binary/ {print $1}' \
| xargs readlink -f | sort -u | xargs -I % sh -c 'echo -n "%: "; % -V'
Błąd:
find: ‘/run/user/1000/gvfs’: Permission denied
permissions
find
abdul qayyum
źródło
źródło
python --version
ipython3 --version
pokazać aktywną wersję. Wszyscy mamy wersję 2.x i 3.x;)/run/
nie powinny być uwzględniane w „znajdź”.gvfs
nie jest własnością użytkownika.python
w konsoli i nacisnąć klawisz tab dwa razy, pokaże każdy plik wykonywalny na twojej ścieżce, zaczynając odpython
.python -V
alternatywach, przejdź do pytania, które faktycznie dotyczy tych informacji .Odpowiedzi:
Uprawnienia:
Tak więc tylko właściciel ma uprawnienia do wykonywania (co umożliwia przeszukiwanie katalogów). Ale używałeś
sudo
i root ma wszystkie możliwe uprawnienia, prawda? Właściwie znalazłeś wyjątek:Ta odpowiedź przez Gilles na Unix i Linux SE wyjaśnia, dlaczego odmówiono zgody na korzeniu tym katalogu, który jest mountpoint zapalnika:
Jeśli uruchomisz
find
polecenie bezsudo
(jako własnego użytkownika, UID 1000), nie dostaniesz tego błędu, ponieważ jesteś właścicielem katalogu, ale zamiast tego dostaniesz inne błędy uprawnień, więc skorzystaj zsudo
porady Gillesa:Najprostszym sposobem sprawdzenia wersji Pythona:
źródło
cd
przejść do tego katalogu jako zwykły użytkownik, ale nie jako root. Jeśli będziesz biegałfind
bezsudo
, nie zobaczysz tego błędu (ale dostaniesz oczywiście inne błędy uprawnień)Istnieje kilka sposobów na znalezienie posiadanej wersji Pythona. Oto dwa sposoby uzyskania wersji Python 2 i Python 3:
Specyficzne dla Pythona
Najpierw po prostu uruchom
python
ipython3
z opcją--version
Jest to specyficzne dla Pythona, ale wiele innych programów używa podobnej metody.
Ogólne dla każdego pakietu / programu
Bardziej ogólną metodą jest sprawdzenie, który pakiet jest zainstalowany.
dpkg -l
wyświetli listę wszystkich twoich pakietów, ale możesz określić, jakich pakietów szukasz. Aby użyć tylko Pythona i Pythona3, użyj następujących poleceń:Jako dodatkowy przysmak. Jeśli chcesz znaleźć wszystkie pakiety, których nazwa zaczyna się od
python
, możesz użyć znaku zastępczego w*
następujący sposób:To wydrukuje wiele linii z pakietami.
źródło