Descompuso el file bash.bashrc, los commands ya no funcionan

Al tratar de instalar Java, intenté agregarlo a la ruta ejecutable con la línea:

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

en el file /etc/bash.bashrc todo el sistema.

Por alguna razón, esto no funcionaba, así que usé:

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

Inicialmente, esto parecía funcionar bien, excepto que ahora sudo , ls , find y todo lo demás ya no funcionan.

Luego traté de borrar esas líneas y reiniciar el sistema, pero el command no estaba disponible; los errores son:

 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 

Para arreglar esto, copié el contenido de /etc/environment en /etc/bash.bashrc , añadí la /etc/bash.bashrc de export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_60/bin y luego escribí source /etc/bash.bashrc .

Una vez más, todo estaba funcionando, pero solo en una sola window de terminal y no después de un reinicio.

Intenté otras cosas y actualmente, al final de /etc/bash.bashrc , están las líneas:

 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/ 

Pero tengo que escribir source /etc/environment y source /etc/bash.bashrc en todas las windows de la terminal para get tanto java como los commands. Es como si mis cambios no son permanentes.

Actualmente, el resultado de echo $PATH en una window de terminal clara es:

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

después de source /etc/environment se convierte en:

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

y, finalmente, después del source /etc/bash.bashrc es:

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

Archivo bash.bashrc completo:

 # 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 cnf 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/ 

¿Alguien puede ayudarme? Estoy bajo Ubuntu 12.04 LTS

Intenta restaurar bash.bashrc a su configuration pnetworkingeterminada y edita tu copy local de PATH en tu file ~ / .bashrc. En otras palabras, ponga esas dos últimas líneas:

 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/ 

en su file ~ / .bashrc en lugar de /etc/bash.bashrc. Es posible que deba reiniciar para que los cambios tengan lugar.

Si eso funciona, y aún desea que los cambios sean de todo el sistema, agregue la variable PATH en / etc / environment para tener la ruta de Java.

Para restaurar su /etc/bash.bashrc a su estado original (si no puede recordar qué es), puede hacer:

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

De lo contrario, la respuesta de @ aprad046 parece ser la mejor solución.