Я использовал следующую команду для проверки версий Python, как указано в этом ответе . Это работает за исключением одной ошибки, показанной ниже. Кто-нибудь может объяснить, почему?
$ 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'
Ошибка:
find: ‘/run/user/1000/gvfs’: Permission denied
permissions
find
Абдул Кайюм
источник
источник
python --version
иpython3 --version
показать активную версию. У всех нас есть версия 2.x и версия 3.x;)/run/
не должны быть включены в "найти".gvfs
не принадлежит вашему пользователю.python
в консоли и дважды нажать клавишу табуляции, она покажет каждый исполняемый файл на вашем пути, начиная сpython
.python -V
альтернативах, пожалуйста, ответьте на вопрос, требующий этой информации .Ответы:
Разрешения:
Таким образом, только владелец имеет разрешение на выполнение (что позволяет искать каталоги). Но вы использовали
sudo
и root имеет все возможные разрешения, верно? На самом деле вы нашли исключение:Этот ответ на Жиля на Unix и Linux SE объясняет , почему запрещен доступ к корневой директории , что, который является точкой монтирования для FUSE:
Если вы запустите
find
команду безsudo
(как ваш собственный пользователь, UID 1000), вы не получите эту ошибку, потому что у вас есть каталог, но вместо этого вы получите другие ошибки разрешения, поэтому используйтеsudo
и примите совет Жиля:Самый простой способ проверить версии Python:
источник
cd
в этот каталог как обычный пользователь, но не как root. Если вы бежитеfind
безsudo
вас, вы не увидите эту ошибку (но, конечно, вы получите и другие ошибки разрешения)Есть несколько способов узнать, какая у вас версия Python. Вот два способа получить версии Python 2 и Python 3:
Специфичный для Python
Сначала просто беги
python
иpython3
с опцией--version
Это специфично для python, но многие другие программы используют аналогичный метод.
Общее для любого пакета / программы
Более общий метод - посмотреть, какой пакет установлен.
dpkg -l
будет перечислять все ваши пакеты, но вы можете указать, какие пакеты вы ищете. Только для python и python3 используйте следующее:В качестве дополнительной сиськи. Если вы хотите найти все пакеты, имена которых начинаются с
python
, вы можете использовать подстановочный знак,*
например:Это напечатает много строк с пакетами.
источник