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
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
type git
,which git
,ls -l /usr/local/bin/git
salidas.file
y notype
😉 así que él quiere (y yo también) para ver el resultado defile /usr/local/bin/git
type
es un shell incorporado endash
,bash
yzsh
. En caso de que utiliceksh
, puede tener una buena excusa para no saberlo. (En miksh
solo hay un alias parawhence
con el nombretype
. No seguro de cuán extendido es dicho entorno.) pastebin.com/VzScxzRg