3 votos

El terminal de OS X no reconoce ningún comando

Hace poco intenté instalar CoffeeScript en mi mac y ahora no puedo usar ni siquiera los comandos más básicos como ls, cd y demás. Algo me dice que es porque la variable $PATH ha cambiado. Recuerdo que tuve que hacerlo cuando intenté hacer la instalación. Intenté seguir las instrucciones encontradas aquí pero no funciona porque no se encuentra el comando vi.

Al introducir echo $PATH en el terminal, se lee /usr/local/bin:

2 votos

cd es un shell incorporado. Nada de lo que hagas a $PATH debería ser capaz de romperlo, así que muy posiblemente has hecho algo mucho peor a tu máquina.

0 votos

Es extraño que echo funciona pero cd y ls no. Intenta abrir las preferencias de Terminal y hacer un nuevo perfil. Luego haz que se ejecute bash --noprofile y desmarca "Ejecutar en shell" (creo que las opciones para esto están en la pestaña Avanzado). También mira si type o which trabajo.

0 votos

Para añadir al análisis correcto de @Wooble, creo que cd está funcionando y usted pensaba que no lo hacía por ls no se puede utilizar. Te aconsejo que vuelvas a comprobar esta información y actualices tu pregunta original para evitar que la gente quiera ayudarte a cazar un marciano :).

4voto

siva Puntos 23

Para restablecer la ruta, elimine la línea que establece la ruta de su ~/.bash_profile o su equivalente, y vuelva a abrir su Terminal.

Edítalo con /usr/bin/nano, o /usr/bin/open, o TextMate, o cualquier otro editor de texto. No es que no se pueda acceder a ningún comando, sino que el PATH no incluye estos binarios -todavía se pueden abrir manualmente proporcionando la ruta o usando cd al directorio.

0 votos

Además, puede la ruta temporalmente para probar las cosas antes de editar los archivos que no se leen hasta que se inicia una nueva sesión - apple.stackexchange.com/a/208425/5472

4voto

Rich Puntos 2429

Has corrompido tu PATH definición de la variable. Sin ninguna indicación de qué método has elegido para modificarla, haré la hipótesis de que la has modificó dentro de su ~/.bash_profile .

Para recuperarse de esta situación, tendrá que volver a un entorno de shell que funcione y luego intentar arreglar correctamente y probar su ~/.bash_profile .

Recuperación de un trabajo ~/.bash_profile : ninguno

Retire su ~/.bash_profile y crear una copia de seguridad de la misma. Dado que su PATH no es de confianza, no lo utilice (utilice la ruta completa de mv ):

/bin/mv ~/.bash_profile ~/.bash_profile.bak

Abrir un nuevo Terminal ventana, dentro de esta, cada comando debe ser encontrado. Compruebe que ha recuperado un PATH :

echo $PATH

Si le resulta más fácil, después de esta comprobación, podría reiniciar su sesión para que para que cualquier nuevo shell obtenga un PATH que funcione.

Analice qué es lo que falla en su ~/.bash_profile

grep PATH ~/.bash_profile.bak

Arreglarlo y probarlo

En lugar de volver a caer con un PATH Utiliza la copia de seguridad de su ~/.bash_profile para arreglarlo allí y probarlo.

Para probarlo, introduzca: . ~/.bash_profile.bak echo $PATH

Vuelve a poner en su sitio lo validado /.bash_profile

Una vez que esté satisfecho, y haya comprobado que tiene acceso a todos sus comandos:

mv ~/.bash_profile.bak ~/.bash_profile

y si quieres usarlo inmediatamente sin reiniciar tu sesión completa, sólo tienes que entrar:

. ~/.bash_profile

0voto

Artem Tikhomirov Puntos 4501

Parece que has eliminado o no has configurado tu PATH correctamente la variable de entorno. Intente eliminar esa línea de ~/.bash_profile y luego abra una nueva ventana de terminal y verifique que sus rutas están configuradas correctamente.

No tiene que utilizar un editor de texto de línea de comandos, puede utilizar el excelente y gratuito BareBones Software TextWrangler . Esto debería reducir los errores al intentar averiguar cómo funciona el vi.

Si no quieres instalar otra aplicación, vi se encuentra en /usr/bin/vi . Para los editores de línea de comandos yo recomendaría pico sobre vi /usr/bin/pico que es mucho más fácil de usar que vi o emacs, pero es torpe en comparación con TextWrangler. Pico pone todos los comandos relevantes en la parte inferior de la ventana de edición.

Buena suerte.

0 votos

Puedes usar TextEdit.app que es parte de OSX sin necesidad de TextWramgler

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X