I'm running into an issue where running common bash commands (e.g. ls, mv, rsync, vi) on an Ubuntu 14.04.5 LTS results in something like this:
bash: rsync: command not found
.
When I ssh in I get this error (before running any commands in the shell):
awk: cmd. line:1: //home/myuser/.pythonbrew/ {next} {print}
awk: cmd. line:1: ^ syntax error
I was able to patch the issue by commenting out these lines in the ~/.bash_profile
and ~/.bashrc
files related to setup of python & pythonbrew:
export PATH=~/opt/python-2.7.3/bin:${PATH}
export PYTHONPATH=~/opt/python-2.7.3/lib
alias pb='pythonbrew'
export PYTHONPATH=~/.pythonbrew/pythons/Python-2.7.3/lib
[[ -s /home/myuser/.pythonbrew/etc/bashrc ]] && source /home/myuser/.pythonbrew/etc/bashrc
However, those lines seem unlikely to be the root cause, since those files hadn't been modified for years (and the bash commands only stopped working in the last few days).
Thoughts?
Contents of ~/.pythonbrew/etc/bashrc
# settings
PATH_ROOT="$PYTHONBREW_ROOT"
if [ -z "${PATH_ROOT}" ] ; then
PATH_ROOT="$HOME/.pythonbrew"
fi
PATH_ETC="$PATH_ROOT/etc"
PATH_HOME="$PYTHONBREW_HOME"
if [ -z "${PATH_HOME}" ] ; then
PATH_HOME="$HOME/.pythonbrew"
fi
PATH_HOME_ETC="$PATH_HOME/etc"
# py file
PY_PYTHONBREW="$PATH_ROOT/bin/pythonbrew"
# functions
__pythonbrew_set_default()
{
PATH_PYTHONBREW="$PATH_ROOT/bin"
PATH_PYTHONBREW_LIB="$PATH_ROOT/lib"
}
__pythonbrew_set_path()
{
PATH_WITHOUT_PYTHONBREW=$(printf "$PATH" | awk -v RS=: -v ORS=: "/${PATH_ROOT//\//\/}/ {next} {print}" | sed -e 's#:$##')
export PATH=$PATH_PYTHONBREW:$PATH_WITHOUT_PYTHONBREW
export PYTHONPATH=$PATH_PYTHONBREW_LIB
}
__pythonbrew_set_temp_path()
{
if [[ -s "$PATH_HOME_ETC/temp" ]] ; then
source "$PATH_HOME_ETC/temp"
PATH_PYTHONBREW="$PATH_ROOT/bin:$PATH_PYTHONBREW_TEMP"
PATH_PYTHONBREW_LIB="$PATH_PYTHONBREW_TEMP_LIB"
else
__pythonbrew_set_default
fi
__pythonbrew_set_path
}
__pythonbrew_set_current_path()
{
if [[ -s "$PATH_HOME_ETC/current" ]] ; then
source "$PATH_HOME_ETC/current"
PATH_PYTHONBREW="$PATH_ROOT/bin:$PATH_PYTHONBREW_CURRENT"
PATH_PYTHONBREW_LIB="$PATH_PYTHONBREW_CURRENT_LIB"
else
__pythonbrew_set_default
fi
__pythonbrew_set_path
}
__pythonbrew_reload()
{
[[ -s "$PATH_ETC/bashrc" ]] && source "$PATH_ETC/bashrc"
}
__pythonbrew_use()
{
[[ $? == 0 ]] && __pythonbrew_set_temp_path
}
__pythonbrew_switch()
{
[[ $? == 0 ]] && __pythonbrew_set_current_path
}
__pythonbrew_off()
{
[[ $? == 0 ]] && __pythonbrew_set_current_path
}
__pythonbrew_update()
{
[[ $? == 0 ]] && __pythonbrew_reload
}
__pythonbrew_venv()
{
if [[ $? == 0 ]] ; then
if [[ -s "$PATH_HOME_ETC/venv.run" ]] ; then
source "$PATH_HOME_ETC/venv.run"
cat /dev/null > "$PATH_HOME_ETC/venv.run"
fi
fi
}
__pythonbrew_find_command()
{
command_name=""
for arg in "$@" ; do
case $arg in
--*) continue;;
-*) continue;;
*)
command_name=$arg
break
;;
esac
done
}
__pythonbrew_run()
{
__pythonbrew_find_command "$@"
"$pythonbrew" "$@"
case $command_name in
use) __pythonbrew_use "$@";;
switch) __pythonbrew_switch "$@" ;;
off) __pythonbrew_off "$@" ;;
update) __pythonbrew_update "$@" ;;
venv) __pythonbrew_venv "$@" ;;
esac
builtin hash -r
}
pythonbrew()
{
pythonbrew=$PY_PYTHONBREW
__pythonbrew_run "$@"
}
pybrew()
{
pythonbrew "$@"
}
sudopybrew()
{
pythonbrew="sudo PYTHONBREW_ROOT=$PATH_ROOT PATH=$PATH_PYTHONBREW:$PATH_WITHOUT_PYTHONBREW $PY_PYTHONBREW"
__pythonbrew_run "$@"
}
# main
__pythonbrew_set_current_path