.profile没有在shell中执行

时间:2016-08-09 14:11:43

标签: shell unix scripting .profile

我想创建一个登录菜单,根据菜单运行不同的配置文件。

#!/usr/bin/ksh
banner welcome

echo "select the application profile:"
echo " 1) profile1"
echo " 2) profile2"

read n
case $n in
    1) . profile1;;
    2) . profile2;;
    *) invalid option;;
esac;

1 个答案:

答案 0 :(得分:0)

好的,我希望我能正确理解这一点。我的解决方案也是使用bash,但是也应该使用ksh

您希望它在运行此脚本并选择一个选项时,然后为当前的bash会话设置该配置文件吗?如果是这样,你需要以不同于平常的方式运行脚本。

运行bash脚本时,其中发生的任何事情都会保留在其中,以免影响外部会话或其他任何内容

因此,如果您想在bash脚本中更改当前用户的配置文件,则需要将bash脚本作为

运行
source <name of script>

而不是

./<name of script>

正如你通常所说的那样。

尝试并让我知道它是否有效,如果没有,我会尝试帮助更多