Я пытался установить инструменты разработчика Android в Eclipse, и я следил за информацией в это видео.
Как сказано в видео, я добавил следующие две строки кода в .bashrc
файл:
export PATH=$(PATH):-/android-sdk/tools/export PATH=$(PATH):-/android-sdk/platform-tools/
Однако, похоже, что это не помогло мне установить файлы Android в Eclipse, так как у меня все еще возникают проблемы с этим. Более того, кажется, что я не могу выполнить ни одной команды в терминале, не получив серьезной ошибки сейчас! Каждый раз, когда я пытаюсь выполнить команду в терминале, я получаю следующее сообщение:
Команда не может быть найдена, поскольку '/usr/bin' не включен в переменную окружения PATH.
Есть ли что-то, что можно восстановить .bashrc
к своему умолчанию?
Идея: Существуют резервные копии .bashrc
, .profile
и т.д. в /etc/skel/
. Таким образом, можно было бы заменить коррумпированный .bashrc
просто перехитрив оттуда.
Осторожность: если вы замените .bashrc
файл с новым файлом, он удалит любые другие изменения, которые вы внесли в него. Например, можно было бы добавить псевдонимы, изготовленный на заказ функция или путь в .bashrc
. Когда вы замените файл, все эти изменения будут потеряны. Лучше, если вы сможете сохранить копию своего измененного .bashrc
прежде чем заменить его. Позже вы сможете аккуратно извлечь из него нужную деталь. Чтобы сохранить резервную копию вашего измененного .bashrc
в вашем домашнем каталоге с именем my_bashrc
используйте следующее в терминале,
/bin/cp ~/.bashrc ~/my_bashrc
Почему? /bin/cp
: В случае, если вы испортили свой $PATH
переменная при изменении ~/.bashrc
все исполняемые файлы будут недоступны с вашего терминала и cp
больше не будет работать. Поэтому рекомендуется позвонить cp
с его полным путем, как /bin/cp
в то время как вы пытаетесь скопировать что-то с поврежденным ~/.bashrc
.
Наконец, используйте следующую команду в вашем терминале, чтобы заменить ~/.bashrc
со свежей копией,
/bin/cp /etc/skel/.bashrc ~/
Это заменит ваш коррумпированный ~/.bashrc
с новым. После этого вам нужно создать источник ~/.bashrc
чтобы изменение произошло немедленно, напишите в терминале,
. ~/.bashrc
или,
source ~/.bashrc
или, если это не сработает, вы можете закрыть терминал и открыть его снова.
Если вы не можете получить рабочую оболочку
Через файловый браузер
- Откройте файловый браузер, перейдите в домашний каталог, нажмите CtrlH так, чтобы были показаны скрытые файлы. Редактировать
.bashrc
по мере необходимости.
- Откройте файловый браузер, перейдите к
/etc/skel
, нажмите CtrlH так, чтобы были показаны скрытые файлы. Копировать .bashrc
в вашу домашнюю папку, чтобы восстановить ее по умолчанию.
Через меню "Выполнить"
- Нажмите AltF2, тип
gedit .bashrc
, нажмите Enter. Редактируйте по мере необходимости.
- Нажмите AltF2, используйте команду
/bin/cp /etc/skel/.bashrc ~/
как указано в ответ суравца чтобы восстановить его по умолчанию.
Через терминал
-
Откройте терминал и не обращайте внимания на то, что у вас нет оболочки. Идти к Редактировать → Предпочтения → Профили:

-
Либо создайте новый профиль, либо отредактируйте текущий профиль, чтобы изменить команду:

Используйте либо /bin/bash --norc
или /bin/bash --rcfile=/etc/skel/.bashrc
.
- Откройте новую вкладку (с пользовательским профилем, если вы его создали). Используйте рабочую оболочку по мере необходимости.
- Удалите пользовательский профиль или снимите флажок с параметра пользовательская команда, если вы отредактировали профиль по умолчанию, как только закончите.
Если у вас есть SSH
Запустите SSH с помощью пользовательской команды, которая должна помочь вам обойти .bashrc
:
ssh -t <host> dash
То dash
оболочка (она же /bin/sh
) является минимальным, но достаточным для восстановления .bashrc
.
Если вы не можете получить графический интерфейс и у вас нет SSH
Загрузитесь в режим восстановления (Как мне загрузиться в режим восстановления?), который даст вам корневую оболочку. Загляни в /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 от Марио Боналеса. Полный сценарий скопирован здесь для полноты картины.
# ~/.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 ignorespaceHISTCONTROL=ignoredups:ignorespace# append to the history file, don't overwrite itshopt -s histappend# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)HISTSIZE=1000HISTFILESIZE=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=yesif [ -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= fifiif [ "$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\$ 'fiunset color_prompt force_color_prompt# If this is an xterm set the title to user@host:dircase "$TERM" inxterm*|rxvt*) PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" ;;*) ;;esac# enable color support of ls and also add handy aliasesif [ -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 aliasesalias ll='ls -alF'alias la='ls -A'alias l='ls -CF'# Add an "alert" alias for long running commands. Use like so:# sleep 10; alertalias 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_aliasesfi# 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_completionfi
Первопричина: $(PATH) на самом деле должен быть $PATH