No se encontró el comando git

Tuve que instalar git desde la fuente en RHEL. Después de la instalación, se muestra que el comando git está en /usr/local/bin/git cuando se prueba el comando whereis. Esta ruta está disponible en $PATH también.

Cuando escribo git, todavía dice «Comando no encontrado». ¿Cómo resolver esto?

EDITAR: salida de varios comandos

$type git type: Command not found. $which git git: Command not found. $ls -l /usr/local/bin/git -rwxr-xr-x 112 root users 5851488 Mar 15 20:07 /usr/local/bin/git $whereis git git: /usr/local/bin/git $echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 

EDITAR: Funciona ahora pero no sé por qué

Desconecté la conexión telnet e inicié sesión de nuevo hace unos minutos y descubrí que el comando git funciona. No estoy seguro de qué causó que comenzara a funcionar. Esto es confuso.

Comentarios

  • Agregue type git, which git, ls -l /usr/local/bin/git salidas.
  • @manatwork, consulte la edición.
  • @Marco agregó la salida de echo $ PATH .
  • Supongo que @manatwork significa file y no type 😉 así que él quiere (y yo también) para ver el resultado de file /usr/local/bin/git
  • @Huygens, type es un shell incorporado en dash, bash y zsh. En caso de que utilice ksh, puede tener una buena excusa para no saberlo. (En mi ksh solo hay un alias para whence con el nombre type. No seguro de cuán extendido es dicho entorno.) pastebin.com/VzScxzRg

Respuesta

De los mensajes de error que «estás usando (t) csh. Sería útil mencionarlo en tu pregunta, especialmente cuando estás mostrando $ como su indicador, y eso es tradicionalmente un indicador de Bourne, no un indicador de csh.

type es un comando incorporado en el shell de estilo Bourne. No lo hace » t existe en csh. Cuando ejecuta type git, le dice que el comando type no se encuentra.

Muchos shells guardan información sobre la ubicación de los comandos en la ruta de búsqueda en un caché. No sé si alguna versión de csh almacena en caché búsquedas negativas, pero parece que la suya sí. Ejecute el comando rehash para actualizar la caché. Cuando inicia una nueva instancia de shell, tiene un caché nuevo y, por lo tanto, no recuerda que git no estaba presente antes.

Comentarios

  • Hola Gilles, debería haber mencionado el caparazón. Lo siento por eso. Pero obtengo $ en el símbolo del sistema tanto para bash como para tcsh. en tsch tiene el formato [username @ systemname] $ y en bash es el formato bash-3.2 $.
  • Creo que esta es la explicación más cercana posible a lo que sucedió. Intentaré recrear esto y verificarlo y volver. Gracias …

Responder

Asegúrese de que, como en este hilo , su shell no ha cambiado del que se supone que debe obtener:

Acabo de encontrar que mi shell se cambió a csh y estaba creando el problema.

[root@localhost ~]# grep ^"$USER" /etc/passwd root:x:0:0:root:/root:/bin/csh 

¡Lo cambié a bash y el problema se resolvió!

[root@localhost ~]# type export export is a shell builtin 

Eso explicaría por qué aparece un mensaje de error «type: Command not found.«.

Experimenté con estos comandos:

[root@localhost ~]# csh [root@localhost ~]# type export type: Command not found. [root@localhost ~]# bash [root@localhost ~]# type export export is a shell builtin [root@localhost ~]# grep ^"$USER" /etc/passwd root:x:0:0:root:/root:/bin/bash 

Comentarios

  • Cambiar el shell a bash provoca el ' escriba ' comando para que funcione. El comando git funciona ahora incluso sin entrar en bash. ¡No sé por qué! Por favor, vea la edición

Respuesta

La razón más probable es que tiene la PATH correcta pero no la .

El último git ejecutable es un archivo binario que está vinculado dinámicamente. Cuando siguió las instrucciones de instalación, probablemente colocó bibliotecas (.so archivos) en /usr/local/lib, debe agregar esta ruta a su LD_LIBRARY_PATH. Pruébelo y luego ejecute git:

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib git 

Si eso no funciona, ¿podría proporcionar el resultado de ldd /usr/local/bin/git . Gracias.

PD: si la solución funcionó, debe agregar la línea LD_LIBRARY_PATH a su .bash_profile

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *