Restablezca su ruta ahora (es decir, antes de cualquier tipo de cierre de sesión) con:
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
No restaura su RUTA completa, pero las utilidades básicas estarán disponibles nuevamente.
Aquí hay un ejemplo del tipo de cosas que suceden:
Tenías una variable PATH (conocida como $ PATH cuando leías de ella)
Algo como:
$ echo $PATH
/home/durrantm/.rvm/gems/ruby-2.0.0-p247/bin:/home/durrantm/.rvm/gems/ruby-2.0.0-p247@global/bin:/home/durrantm/.rvm/rubies/ruby-2.0.0-p247/bin:/home/durrantm/.rvm/bin:/h
ome/durrantm/.autojump/bin:/usr/local/heroku/bin:/home/durrantm/bin:/home/durrantm/.autojump/bin:/usr/local/heroku/bin:/home/durrantm/.autojump/bin:/usr/local/heroku/bin:
/home/durrantm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/durrantm/.rvm/bin:/home/durrantm/.rvm/bin:/home/durrantm
/.rvm/bin
Intentaste agregarle, pero accidentalmente usaste
PATH=PATH:other_dir
en vez de
PATH=$PATH:other_dir
y el resultado fue que tu camino se convirtió
PATH:other_dir
y luego todas las utilidades como ls y sed no funcionan
Puede arreglar el conjunto mínimo haciendo
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
lo cual es particularmente útil si un archivo de puntos de inicio de sesión está estropeando su RUTA
Verifique sus archivos .bashrc y / o .bash_profile para ver si hay cambios en la RUTA.
Como Greg dice, también puede cerrar sesión (o una opción más segura, abrir una nueva ventana en caso de que se abra una nueva ventana) y luego hacer eco de $ PATH desde una nueva ventana.
Lo mismo sucede cuando lo haces path=
sin valores. Se 'borra' su ruta actual y causa estos problemas. Texto fuerte
En cuanto a por qué , cuando tiene estos problemas, cd funciona y ls no funciona:
cd
es un comando "incorporado" que no necesita su RUTA para encontrar el programa
ls
es un programa y necesita usar PATH para encontrar dónde está.
Puedes ver esto con:
$ builtin ls
-bash: builtin: ls: not a shell builtin
14:47:29 mdurrant C02MH2DQFD58 /Users/mdurrant
$ builtin cd
14:47:31 mdurrant C02MH2DQFD58 /Users/mdurrant
$
Ningún error significa que el comando está incorporado
Antes de 'seguir adelante' (o cerrar sesión) ...
Asegúrese de probar cualquier cambio ( particularmente aquellos en .bashrc, .profile, etc. que están haciendo comandos de configuración de RUTA) abriendo una nueva ventana o haciendo source ~ / .bash_profile para ejecutarlo. También es una buena práctica mantener abierta la ventana y el editor (cuando está cambiando el archivo .bash_profile) en caso de que sus cambios no funcionen y evitar que abra nuevas ventanas para editar el archivo. Aunque todavía puede usar TextEdit u otro editor simple para cambiar el archivo (evitando la línea de comando y vi, por ejemplo). Tenga cuidado de NO reiniciar si / cuando su shell está roto o es posible que ni siquiera pueda iniciar sesión. y eso es realmente muy malo (sin otra cuenta su
de la que se manguera). Me ha pasado!
Sin embargo, mi solución de "cuenta adicional" también fue un salvavidas y muy recomendable para todos (¡hazlo ahora!)