Utilicé el siguiente comando para verificar las versiones de Python como se indica en esta respuesta . Funciona excepto por un error, que se muestra a continuación. ¿Alguien puede explicar por qué?
$ 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'
Error:
find: ‘/run/user/1000/gvfs’: Permission denied
permissions
find
abdul qayyum
fuente
fuente
python --version
ypython3 --version
para mostrar la versión activa. Todos tenemos una versión 2.xy una versión 3.x;)/run/
no debe incluirse en "buscar".gvfs
no es propiedad de su usuario.python
en la consola y presionar la tecla de tabulación dos veces, se mostrará cada ejecutable en su ruta a partir depython
.python -V
y alternativas, diríjase a una pregunta que realmente solicite esa información .Respuestas:
Los permisos:
Por lo tanto, solo el propietario tiene permiso de ejecución (que permite buscar directorios). Pero, usaste
sudo
y root tiene todos los permisos posibles, ¿verdad? En realidad encontraste la excepción:Esta respuesta de Gilles en Unix y Linux SE explica por qué se niega el permiso para el directorio raíz, que es un punto de montaje para FUSE:
Si ejecuta el
find
comando sinsudo
(como su propio usuario, UID 1000) no obtendrá ese error, porque es el propietario del directorio, pero en su lugar obtendrá otros errores de permiso, así que usesudo
y siga el consejo de Gilles:La forma más fácil de verificar las versiones de Python:
fuente
cd
hacerlo en ese directorio como tu usuario normal, pero no como root. Si correfind
sinsudo
no verá ese error (pero obtendrá otros errores de permiso, por supuesto)Hay varias formas de encontrar qué versión de Python tienes. Aquí hay dos formas de obtener las versiones de Python 2 y Python 3:
Python específica
Primero solo corre
python
ypython3
con la opción--version
Esto es específico para python, pero muchos otros programas usan un método similar.
General para cualquier paquete / programa
Un método más general es ver qué paquete está instalado.
dpkg -l
enumerará todos sus paquetes, pero puede especificar qué paquetes está buscando. Solo para python y python3 use lo siguiente:Como un titbit extra. Si desea encontrar todos los paquetes que tienen un nombre comenzando
python
, puede usar caracteres comodín*
como este:Eso imprimirá muchas líneas con paquetes.
fuente