Назад | Перейти на главную страницу

Восстановление .bashrc из запущенного сеанса

Я случайно удалил свой .bashrc. У меня все еще работает терминал. Какие настройки я могу восстановить?

У меня уже есть псевдонимы (из alias команда). Я предполагаю, что все if и case ушли, но я хочу получить переменные. Как я могу это сделать? (кроме необходимости печатать их). И что еще я могу восстановить?

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

cp /etc/skel/.bashrc ~/

Каталог skel имеет (или должен иметь) настройки по умолчанию для новых пользователей. Когда пользователь создается, содержимое каталога skel копируется в новый дом пользователя.

Добавлено описание того, как проверить, что могло быть в файле bashrc пользователя, чего нет в файле bashrc по умолчанию.:

Если у вас был измененный файл .bashrc, а с тех пор env сбросит все настройки сеанса (много всего), которые могут исходить из нескольких файлов (/ etc / bashrc, / etc / profile, .profile, ....). вам нужно получить то, что было создано из ваших своя bashrc, который отличается от bashrc по умолчанию, и отбросить все, что сгенерировано из других исходных файлов bash:

На основе ответа «env», отправленного silviud, и пока у вас все еще открыт старый терминал, вы можете сохранить env вывод в файл. Затем откройте новую оболочку и сравните старый env с новым env, показывая, что было сгенерировано из вашего .bashrc.

Например, в вашем старом терминале выгрузите env в файл:

env > oldenv

В новой оболочке узнайте, что изменилось теперь, когда .bashrc используется по умолчанию:

comm -3 <(env) oldenv

Отредактируйте .bashrc, полученный из каталога skel, чтобы добавить отличия, полученные от приведенной выше команды.

HTH

shell$ env
# will tell you all the settings you have into that terminal 
# the alias is handy as well for all the aliases you have

Это случилось со мной, действительно страшно! Я запустил «env», чтобы получить все переменные среды, а также команда «alias» напечатает все ваши псевдонимы, которых нет в вашей среде.

Так что беги:

env

и

alias

и скопируйте их в файл скелета bashrc.

Теперь быстро поместите ваш .bashrc в git:

cd ~
git init
git add .bashrc
git commit -m "added .bashrc"