ubuntu环境变量

本文详细介绍了Ubuntu系统中环境变量的配置,包括四个关键文件:/etc/bash.bashrc、/etc/profile、~/.bashrc和~/.profile的用途和区别。文章探讨了环境变量的配置方法,以及如何区分交互式shell和非交互式shell,login-shell和nonlogin-shell。此外,还讲解了如何针对当前终端、当前用户和所有用户设置环境变量,并提供了OpenCV的环境配置步骤。
摘要由CSDN通过智能技术生成

环境变量

环境变量即当前环境下的参数或者变量。在操作系统中用来设置操作系统的一些参数。

四个文件

ubuntu下常配置的四个环境变量文件/etc/bash.bashrc、/etc/profile、~/.bashrc、~/.profile。这四个文件都用于配置环境变量,常常会搞不懂该配置哪一个。

/etc/和~/

四个文件有两个存放位置:/etc/目录和~/用户家目录。/etc/目录主要存放系统配置文件。而~/用户家目录则存放用户个人的文件。
显然,不同的存放位置对应的配置文件的作用域不同,对于/etc/bash.bashrc、/etc/profile存放在系统配置文件目录,则环境变量指定的内容作用于整个系统所有的用户。而~/.bashrc、~/.profile则只作用于当前的使用者用户。因此,如果想更改的内容对所用用户有效,则更改的环境变量应是/etc/下的bash.bashrc和profile文件,如果只想对个人用户有效,则需更改的是当前用户~/家目录下的.bashrc和.profile文件。

bashrc和profile

四个文件又分为两大类,bashrc类文件和profile类文件。不同文件的作用方式又有不同,bashrc文件主要作用于bash shell,用于设置与bash shell 相关的东西,而profile文件则作用于整个系统环境,用于设置系统环境参数。
对于bashrc文件,作用于bash shell(linux的shell有多种:sh\bash\csh\ksh),只要用户运行bash命令,该文件里的内容就会起作用,当重新打开一个shell(打开一个新shell和打开一个新终端terminal不一样,)时就会重新读取bashrc文件的内容,即更改的内容会随着新的shell而生效,也可以使用sourse 来更新bashrc的内容。
对于profile文件,作用于整个系统,它是在系统启动,用户第一次登录时被读取执行的,因此一般情况下是需要重启系统才能生效的。

下面是摘抄自网络的

交互式shell和非交互式shell:交互与非交互的定义是在于shell是否与终端(用户)进行数据交互(即接受来自键盘的输入,并将结果输出到显示器),交互式根据用户输入而产生输出,而非交互式通常不直接接受用户的输入,也不直接在终端输出结果。通常用户写的shell脚本都是非交互式的,通过sh 直接运行该脚本文件。
login-shell和nonlogin-shell:login即登录的意思,因此这两种shell的区别在于是否需要用户登录login-shell是说在取得bash时需要完整的登陆流程。如tty1~tty6登录,需要输入账号和密码,此时取得的bash就是login shell(ctl+alt+f1)。non-login shell就是取得bash不需要重复登录,终端启动的shell输入窗口就是non-login shell。在shell窗口直接su切换的用户,也属于non-login shell(ctl+alt+t࿰

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值