在询问我的问题之前,我尝试使用谷歌搜索一段时间....当尝试登录(su-oracle)时,我拥有以下oracle用户,似乎.bash_profile未被获取...我正在使用我在其中输入的别名cmd称为“ l”,它执行“ ls -ltr” ...
有趣的是,当我转到玉米壳(KSH)...并回显我的壳时,我仍将CSH作为默认壳....而在我的默认壳(CSH)上,我无法获取我的.bash_profile ....我在这里做错了什么?...使用“ useradd” cmd创建新用户时,默认情况下会创建配置文件。
srv248:/oracle# su - oracle
srv248:/oracle/TEST> cat /etc/passwd | grep oracle
oracle:x:110:501:Oracle user:/oracle/TEST:/bin/csh
srv248:/oracle/TEST>
srv248:/oracle/TEST> cat .bash_profile
PATH=/usr/sbin:$PATH:/sbin:/bin:/sbin
stty erase ^?
umask 022
PS1=`tput smso``hostname | cut -d. -f1``tput rmso`":"'$PWD'"> "
alias p='pwd'
alias l='ls -ltr'
srv248:/oracle/TEST> l
l: Command not found.
srv248:/oracle/TEST> source .bash_profile
set: Variable name must begin with a letter.
srv248:/oracle/TEST>
srv248:/oracle/TEST> echo $SHELL
/bin/csh
srv248:/oracle/TEST>
srv248:/oracle/TEST> ksh
$
$ . ./.bash_profile
Value of TERM has been set to "xterm".
srv248:/oracle/TEST>
srv248:/oracle/TEST> l
total 68
drwx------ 2 oracle dba 16384 Mar 30 20:39 lost+found
drwxr-xr-x 2 oracle dba 4096 Aug 18 16:20 10g
drwxr-xr-x 2 oracle dba 4096 Aug 18 16:21 control
drwxr-xr-x 3 oracle dba 4096 Aug 18 18:04 data
srv248:/oracle/TEST>
srv248:/oracle/TEST> echo $SHELL
/bin/csh
srv248:/oracle/TEST>
最佳答案
我猜这是我的错...弄清楚了这是怎么回事...
我正在使用csh作为用户外壳程序,但要求它读取.bash_profile ...这不起作用....一旦我将用户的外壳程序更改为/ etc / passwd中的/ bin / bash即可...
关于linux - 无法在csh中获取bash配置文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32082305/