Я пытался установить инструменты разработчика Android на Eclipse и следил за информацией из этого видео .
Как сказано в видео, я добавил следующие две строки кода в файл .bashrc
:
export PATH=$(PATH):-/android-sdk/tools/
export PATH=$(PATH):-/android-sdk/platform-tools/
Однако похоже, что это не помогло мне установить файлы Android в Eclipse, поскольку у меня все еще есть проблемы с этим. Более того, мне кажется, что я не могу выполнить какую-либо команду в терминале, не получив серьезной ошибки! Каждый раз, когда я пытаюсь ввести команду в терминале, я получаю следующее сообщение:
Команда не может быть найдена, потому что '/ usr / bin' не включен в переменную среды PATH.
Можно ли восстановить .bashrc
по умолчанию?
Идея: В /etc/skel/
существуют резервные копии .bashrc
, .profile
и др. Таким образом, можно заменить повреждённый .bashrc
, просто перейдя оттуда.
Внимание: если вы замените файл .bashrc
на свежий, он удалит все остальные изменения, которые вы в нём сделали. Например, в .bashrc
можно добавить псевдонимы , пользовательскую функцию или PATH. При замене файла все эти изменения будут потеряны. Лучше сохранить копию модифицированного файла .bashrc
перед его заменой. Позже вы сможете аккуратно извлечь из него нужную часть. Чтобы сохранить резервную копию вашего модифицированного .bashrc
в вашем домашнем каталоге с именем my_bashrc
, используйте следующее в терминале,
/bin/cp ~/.bashrc ~/my_bashrc
Почему /bin/cp
: В случае, если при смене ~/ вы допустили ошибку с переменной
весь исполняемый файл будет недоступен с вашего терминала и $PATH
. bashrccp
больше не будет работать. Поэтому рекомендуется вызывать cp
с его полным путем как /bin/cp
, когда вы пытаетесь скопировать что-то с поврежденным ~/.bashrc
. И наконец, используйте следующую команду в своем терминале, чтобы заменить ~/.bashrc
на новую копию,
/bin/cp /etc/skel/.bashrc ~/
Она заменит ваш поврежденный ~/.bashrc
на новый. После этого вам нужно установить исходный код ~/.bashrc
, чтобы изменение произошло немедленно, запишите в терминал,
. ~/.bashrc
или,
source ~/.bashrc
или, если это не сработает, вы можете закрыть терминал и открыть его снова.
.bashrc
./etc/skel
, нажмите CtrlH, чтобы отобразились скрытые файлы. Скопируйте .bashrc
в свою домашнюю папку, чтобы восстановить ее к настройкам по умолчанию.gedit .bashrc
, нажмите Enter. Редактируйте по мере необходимости./bin/cp /etc/skel/.bashrc ~/
, как указано в ответе souravc, чтобы вернуть его к настройкам по умолчанию.и игнорируйте, что у вас нет оболочки. Перейдите к Редактируйте → Настройки → Профили :
Либо создайте новый профиль, либо отредактируйте текущий профиль, чтобы изменить команду:
Используйте либо /bin/bash --norc
, либо /bin/bash --rcfile=/etc/skel/. bashrc
.
Запустите SSH с помощью пользовательской команды, которая поможет вам обойти . bashrc
:
ssh -t <host> dash
Оболочка dash
(также известная как /bin/sh
) минимальна, но достаточна для восстановления .bashrc
.
Boot into recovery mode (Как загрузиться в режим восстановления?), то получится корневая оболочка. Ищите в /home
домашний каталог пользователя.
Через TTY
Вы можете войти в TTY, нажав ctrl+alt+f1, где необходимо войти в систему под своим именем пользователя и паролем. ctrl+alt+f7 вернет вас к вашему графическому интерфейсу позже.
Теперь скопируйте существующий файл raw .bashrc
из /etc/skel
в ваш домашний каталог по
cp /etc/skel/.bashrc ~/
Может быть, даже перенесёте остальное, если вы не уверены, что ваш .profile
тоже был изменён.
cp /etc/skel/.profile ~/
Теперь, чтобы .bashrc
немедленно вступил в силу, Вам, возможно, понадобится исходный код:
source ~/.bashrc
Если Вы заменили .profile
, то Вам нужно перезагрузиться, чтобы он вступил в силу.
Я попробовал ответы на эти вопросы, но по какой-то причине в моем каталоге / etc / skel /
не было нужных файлов.
Я нашел копию файл по умолчанию ~ / .bashrc
в этом GitHub Gist, автор Марио Боналес . Полный сценарий скопирован сюда для полноты.
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# don't put duplicate lines in the history. See bash(1) for more options
# ... or force ignoredups and ignorespace
HISTCONTROL=ignoredups:ignorespace
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi