Терминал не понимает некоторые простые команды и пытается установить пакет «sed» после попытки добавить каталог в PATH

Изучая Linux, я написал простой скрипт для проверки различных переменных сценариев и аргументов. Попытался добавить каталог в мой путь, что-то пошло не так. Я даже не могу использовать команду ls …

Понятия не имею, что случилось, пожалуйста, объясните мне, как это произошло и как это исправить. Спасибо Bash Shell

One Solution collect form web for “Терминал не понимает некоторые простые команды и пытается установить пакет «sed» после попытки добавить каталог в PATH”

Сначала о переменной PATH.

Я бы порекомендовал эту настройку:

mkdir ~/scripts echo 'export PATH=/home/jack/scripts:${PATH}' >> ~/.bashrc . ~/.bashrc 

Я не думаю, что добавление ~ / Documents в PATH является лучшей практикой. Добавление условия экспорта в .bashrc делает его постоянным. Фигурные скобки изолируют имя переменной от окружающего текста. Имена переменных чувствительны к регистру.

Итак, когда вы сделали

 PATH=$path:~/Documents 

вы фактически уничтожили свой PATH, так как $ path считается другой переменной и, скорее всего, она не была установлена. Я не совсем уверен, но shell может также попытаться интерпретировать оставшуюся часть строки как имя переменной.

 PATH=${PATH}:~/Documents 

работал бы.

Я думаю, что самый простой способ исправить вашу ситуацию – это выйти из системы и войти снова. Это установит значение PATH по умолчанию.

Linux и Unix - лучшая ОС в мире.