你可以在~/.bashrc中加入执行.profile的语句, 我确认.bashrc是肯定会被执行的。你在最后加上一条:source ~/.profile
也许是因为这个不是login shell? 可能在ctrl+alt+f3或者ssh那种就会执行了
也许是因为这个不是login shell? 可能在ctrl+alt+f3或者ssh那种就会执行了
之前不管是在UOS V20,还是deepin 20.9,还是V23非正式版,都是可以的,我一直是这么用的。不知道这是不是V23正式版的bug?反正Linux蛮乱混的。
(我在麒麟桌面OS V10上也是这么写在.profile文件里,就可以,唯一不起作用的是LD_LIBRARY_PATH环境变量,麒麟下必须用ldconfig加载动态链接库目录,否则GUI应用无法找到动态链接库,麒麟工程师说麒麟桌面环境屏蔽了D_LIBRARY_PATH)。
之前不管是在UOS V20,还是deepin 20.9,还是V23非正式版,都是可以的,我一直是这么用的。不知道这是不是V23正式版的bug?反正Linux蛮乱混的。
(我在麒麟桌面OS V10上也是这么写在.profile文件里,就可以,唯一不起作用的是LD_LIBRARY_PATH环境变量,麒麟下必须用ldconfig加载动态链接库目录,否则GUI应用无法找到动态链接库,麒麟工程师说麒麟桌面环境屏蔽了D_LIBRARY_PATH)。
刚才试了一下,在终端里是/bin/bash,在ctrl+alt+f3里是-bash,结合文件开头的注释,我觉得现在这个应该是feature,不是bug
但具体是不是,我得找个官方人员来:@deepin小助手
刚才试了一下,在终端里是/bin/bash,在ctrl+alt+f3里是-bash,结合文件开头的注释,我觉得现在这个应该是feature,不是bug
但具体是不是,我得找个官方人员来:@deepin小助手
按照大部分文档的说法,.profile或.bash_profile只在登录时被调用一次,一般用于设置环境变量等不变化的内容,而.bashrc 是在每次开启终端时都会调用(例如点击状态栏的终端图标),一般用来设置别名、函数等。
我都是按照这个规定来设置的,以前20.9和UOS也是这么设置的,怎么23变了,官方权威解释一下?
好吧,既然.profile会默认调用.bashrc,我把所有函数、别名、环境变量都放到.bashrc算了。
好吧,既然.profile会默认调用.bashrc,我把所有函数、别名、环境变量都放到.bashrc算了。
一直都是把alias 之类的写在 ~/.bashrc 里面
debian系统的问题,debian系统登陆时会执行~/.xsessionrc 文件。在用户目录下 创建 ~/.xsessionrc 文件,在其中加载.profile文件(添加,“. $HOME/.profile” 这个行)
这个应该是 dash 的问题,跟 bash 无关。一些 Debian 系的发行本会将 /bin/sh 链接到 dash ,而非 bash 。当系统登录并由 sh(这时链接到 dash) 来执行初始化配置时,Debian 和 Ubuntu 在如何处理 ~/.profile 方面有所不同:Debian 默认不加载~/.profile ,而 Ubuntu 默认加载。我猜 deepin 应该延续了 Debian 的做法,所以,系统登录时没有加载 ~/.profile 。
你可以把 /bin/sh 链接到 bash ,其实,由 bash 来执行系统初始化配置,速度也没慢多少。
debian系统的问题,debian系统登陆时会执行~/.xsessionrc 文件。在用户目录下 创建 ~/.xsessionrc 文件,在其中加载.profile文件(添加,“. $HOME/.profile” 这个行)
cat ~/.xsessionrc
# patch for deepin/uos
if [[ -f "$HOME"/.profile ]];then
. $HOME/.profile
fi
tail -n 3 /etc/os-version
MajorVersion=23
MinorVersion=23
OsBuild=31038.101
不管用啊。
比如在 vscode 里,可以设置终端启动参数 -l
来实现登录态。 deepin 默认的终端有这个吗。
下载了oracle instantclient和oceanbase的客户端obclient,分别放在/opt/oracle/instantclient_19_24和/opt/oceanbase/obclient目录下,权限没有问题,在~/.profile最下面增加了几行环境变量,如图。但是重启后环境变量没有生效!一个也没有生效!而且,.profile是会判断用户家目录下是否有bin目录,如果有,也会加入PATH,但我在家目录下创建了bin目录,并且把脚本和可执行程序拷贝到bin下,PATH也没有加入bin路径。但是执行source ~/.profile或者 . ~/.profile又是可以生效的,就是终端启动不能自动加载。
以前是好好的。不知道是我哪里配置错误了,还是正式版的bug?请专家指正。
如图,前面两段if语句是.profile原来自带的,判断是否有bin目录,如果有,就加入PATH。ORACLE_HOME这一行起是我后加的,都没起作用。