bash.bashrc 파일이 엉망이고 명령이 더 이상 작동하지 않습니다.

bash.bashrc 파일이 엉망이고 명령이 더 이상 작동하지 않습니다.

Java를 설치하려고 할 때 다음 줄을 사용하여 실행 파일 경로에 Java를 추가해 보았습니다.

    export PATH=/usr/lib/jvm/jdk1.7.0_60/bin:$PATH

시스템 전체 /etc/bash.bashrc파일에.

어떤 이유로 이것이 작동하지 않아서 다음을 사용했습니다.

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

처음에는 지금을 제외하고는 잘 작동하는 것 같았고 sudo다른 모든 것은 더 이상 작동 ls하지 find않습니다.

그런 다음 이 줄을 제거하고 시스템을 다시 시작해 보았지만 다음과 같은 명령을 사용할 수 없었습니다.

Command 'sudo' is available in '/usr/bin/sudo'
The command could not be located because '/usr/bin' is not included in the PATH  environment variable.
sudo: command not found

/etc/environment이 문제를 해결하기 위해 in 의 내용을 복사하고 /etc/bash.bashrc행을 추가한 export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_60/bin후 를 입력했습니다 source /etc/bash.bashrc.

다시 말하지만, 모든 것이 잘 작동하지만 재부팅 후에는 실행되지 않고 단일 터미널 창에서만 실행됩니다.

나는 다른 것을 시도했지만 현재 /etc/bash.bashrc끝에 몇 줄이 있습니다.

export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_60/bin/
export JAVA_HOME=$JAVA_HOME:/usr/lib/jvm/jdk1.7.0_60/bin/java/

하지만 및 명령을 얻으려면 모든 터미널 창에 source /etc/environmentand를 입력해야 합니다. 내 변화가 영구적이지 않은 것 같습니다.source /etc/bash.bashrcjava

echo $PATH현재 명확한 터미널 창의 결과는 다음과 같습니다.

/usr/lib/jvm/jdk1.7.0_60/bin/

그러면 source /etc/environment다음과 같이 됩니다:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

마지막으로 다음 source /etc/bash.bashrc과 같습니다.

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.7.0_60/bin/

bash.bashrc 파일을 완성하세요:

# System-wide .bashrc file for interactive bash(1) shells.

# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# 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, overwrite the one in /etc/profile)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
#    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
#    ;;
#*)
#    ;;
#esac

# enable bash completion in interactive shells
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi

# sudo hint
if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; then
    case " $(groups) " in *\ admin\ *)
    if [ -x /usr/bin/sudo ]; then
        cat <<-EOF
        To run a command as administrator (user "root"), use "sudo <command>".
        See "man sudo_root" for details.

        EOF
   fi
   esac
fi

# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
    function command_not_found_handle {
            # check because c-n-f could've been removed in the meantime
            if [ -x /usr/lib/command-not-found ]; then
                /usr/bin/python /usr/lib/command-not-found -- "$1"
                return $?
            elif [ -x /usr/share/command-not-found/command-not-found ]; then
                /usr/bin/python /usr/share/command-not-found/command-not-found -- "$1"
               return $?
        else
           printf "%s: command not found\n" "$1" >&2
           return 127
        fi
    }
fi

export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_60/bin/
export JAVA_HOME=$JAVA_HOME:/usr/lib/jvm/jdk1.7.0_60/bin/java/

누구든지 나를 도와줄 수 있나요? 우분투 12.04 LTS를 사용하고 있습니다

답변1

원래 상태로 복원하려면 /etc/bash.bashrc(무엇이었는지 기억나지 않는 경우) 다음을 수행할 수 있습니다.

sudo rm /etc/bash.bashrc
sudo apt-get -o Dpkg::Options::="--force-confmiss" install --reinstall bash

그렇지 않으면@aprad046의 답변최고의 솔루션인 것 같습니다.

답변2

bash.bashrc를 기본 설정으로 복원하고 ~/.bashrc 파일에서 PATH의 로컬 복사본을 편집해 보세요. 즉, 마지막 두 줄을 입력하십시오.

export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_60/bin/
export JAVA_HOME=$JAVA_HOME:/usr/lib/jvm/jdk1.7.0_60/bin/java/

/etc/bash.bashrc 대신 ~/.bashrc 파일에 있습니다. 변경 사항을 적용하려면 재부팅해야 할 수도 있습니다.

이것이 작동하고 시스템 전체에 걸쳐 변경사항을 적용하려면 PATH 변수를 /etc/environment에 추가하여 Java 경로를 얻으십시오.

답변3

가장 일반적으로 사용되는 명령(시도한 명령 포함)이 포함되어 있으므로 를 /bin입력하여 실행할 수 있습니다 /bin/ls./bin/vi

관련 정보