Как восстановить PATH в ~ / .bashrc, когда базовые команды не работают?

При установке программы на Ubuntu я перепутал пути в своем ~ / .bashrc. Теперь я не могу использовать команды Linux, такие как ls, vim и т. Д. Поэтому я не могу редактировать файл ~ / .bashrc (это кластер). Как я могу исправить файлы запуска оболочки?

linux,bash,environment-variables,

-1

Ответов: 2


2 принят

Укажите полностью квалифицированный путь к редактору

Указание абсолютного пути к вашему редактору (например, vim, nano или emacs), как правило, позволит вам исправить файлы запуска оболочки. Например, чтобы отредактировать и переименовать файл ресурсов Bash:

/usr/bin/nano ~/.bashrc &&
    . ~/.bashrc

Начать чистую окружающую среду

Если вы просто хотите запустить новую оболочку, не наследуя от текущей среды или не загружая текущий файл .profile или .bashrc, вы можете это сделать. Например:

/usr/bin/env -i /bin/bash --noprofile --norc

Затем вы должны будете использовать надежные системные настройки по умолчанию для изменения своих PATH или других параметров перед поиском файлов запуска вашей оболочки вручную или просто с помощью новой оболочки:

command exec /bin/bash

Переопределить PATH в текущей оболочке

Вы также можете попробовать переопределить PATH в текущей оболочке с системными значениями по умолчанию, используя стандартную утилиту getconf . Например:

export PATH=$(command getconf PATH)

Вы также можете настроить свой PATH вручную на минимальное стандартное значение по умолчанию, например:

export PATH=/usr/bin:/bin:/usr/sbin:/sbin

поэтому вы можете продолжить работу над своей проблемой.

Кластеры и распределенные системы

Этот аспект, вероятно, выходит за рамки сайта о программировании, тем более, что у нас недостаточно информации о ваших системах. В общем случае, если вы перепутали общесистемные или кластерные параметры среды, вам может потребоваться просмотреть значения в файле / etc / profile, /etc/profile.d, / etc / skel, общих ресурсах NFS или в других местах, где ваша учетная запись или приложение PATH устанавливается.

Если проблема является локальной для учетной записи, то советы, которые я привел выше, помогут. Вы также можете рассмотреть возможность входа в другую учетную запись, которая не обнаруживает те же проблемы.

Зная, где исправить проблему с несколькими системами, или зная, какие ваши системные или пользовательские настройки PATH должны быть, выходит за рамки разумного вопроса о переполнении стека. Однако, несмотря на это, любое из вышеперечисленных решений должно работать.


4

Если ваш $ PATH потерян, нет проблем, вы можете найти свой редактор в любом из обычных мест /usr/bin/.

Поэтому вы можете начать свое редактирование с:

/usr/bin/vim .bashrc

Вы можете намного проще создать просто новый, если вы создадите нового пользователя с вашим дистрибутивом и просто скопируете файл .bashrc оттуда в свой собственный домашний каталог. Каждый дистрибутив предоставляет простой инструмент gui для добавления нового пользователя в систему. Так что это должно работать без наличия действительного .bashrc.

Что заставляет меня задаться вопросом: все мои настройки PATH находятся не в .bashrc напрямую, а в системном. На Fedora это что-то вроде:

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

Для ubuntu это будет иначе. Но не имеет значения, потому что создание нового пользователя также поможет в этом случае;)

Linux, Баш, переменные окружения,
Похожие вопросы
Яндекс.Метрика