
Я следил за этимруководстводля добавления переменной JAVA для всех пользователей. Затем я открыл редактор, который предоставляет мой хостинг-сервис, и добавил последние 2 строки.Centos 5.9сервер.
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}
# ksh workaround
if [ -z "$EUID" -a -x /usr/bin/id ]; then
EUID=`id -u`
UID=`id -ru`
fi
# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
fi
# No core files by default
ulimit -S -c 0 > /dev/null 2>&1
if [ -x /usr/bin/id ]; then
USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 99 ] && [ "`id -gn`" = "`id -un`" ]; then
umask 002
else
umask 022
fi
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. $i
else
. $i >/dev/null 2>&1
fi
fi
done
unset i
unset pathmunge
#cPanel Added local::lib -- BEGIN
LOCALLIBUSER=$USER
if [ -e "/usr/bin/whoami" ]; then
LOCALLIBUSER=`/usr/bin/whoami`
fi
if [ "$LOCALLIBUSER" != "root" ]; then
eval $(perl -Mlocal::lib)
fi
#cPanel Added local::lib -- END
export PATH=$PATH:/opt/java/jdk1.6.0_41/bin
export PATH=$PATH:/opt/java/jdk1.6.0_41/bin
После повторного входа я получаю:
Проблема в том, что мне нужно настроить домашнюю переменную Java.Я все еще получаю эту ошибку, даже если удаляю то, что добавил в последних двух строках.. Спасибо.
решение1
Очень похоже, что редактор, который вы использовали, заменил символы новой строки ('\n') (которые численно равны символам перевода строки (LF)) на последовательности CR+LF (CR = возврат каретки). В своей совокупности сообщения об ошибках, которые вы показали, не имеют особого смысла, но эта часть бросилась мне в глаза:
…bash: /etc/profile: line 6: syntax error near unexpected token `{
'
Это означает, что «неожиданный токен» — это , {
за которым следует CR.