Linux环境变量学习

Linux 环境变量学习

1.       Linux常用环境变量有哪些?

PATH说简单点,就是输入命令之后,就会在其中定义的路径当中去查找;

HOME是指用户的工作目录;

HISTSIZE是指保存历史命令记录的条数;

LOGNAME是指当前用户的登录名;

HOSTNAME是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的;

SHELL是指当前用户用的是哪种Shell

LANG/LANGUGE是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量;

MAIL是指当前用户的邮件存放目录;

PS1是基本提示符,对于root用户是#,对于普通用户是$PS2是附属提示符,默认是“>”;

IFSshell内定的一个变量,默认定义的值为 3 个,这三个值人眼看不到的,这个变量的作用就是把字符串里的这三个字符转换为分隔符。

2.       涉及到的相关命令

env:显示所有的环境变量;

set:显示本地定义的Shell变量;

unset:清除设置的变量(包括环境变量);

export:导出设置的环境变量;

readonly:设置变量为可读,不能修改此变量;

source:后面的参数是文件,表示读取并执行该文件当中的命令你。

如果在C程序中,与环境变量相关的函数有:

getenv()

setenv()

unsetenv()

3.       变量、本地变量和环境变量

变量:按照定义来说变量是存储设备中的一些可读写的存储单元,变量可以定制用户本身的工作环境,使用变量可以保存有用信息,使系统获知用户相关的设置,变量也用于保存暂时的一些信息。

本地变量:本地变量在用户现在的shell生命期的脚本中使用,也就是说,如果退出当前的Shell,那么这个变量就会消失。

环境变量:环境变量用于所有用户进程(经常称为子进程)。登录进程称为父进程。Shell中执行的用户进程均称为子进程。不像本地变量(只用于现在的Shell)环境变量可用于所有子进程,这包括编辑器、脚本和应用。环境变量可以在命令行中设置,但用户注销时这些值将丢失,因此最好在.profile文件中定义。系统管理员可能在/etc/profile文件中已经设置了一些环境变量。将之放入profile文件意味着每次登录时这些值都将被初始化。传统上,所有环境变量均为大写。环境变量应用于用户进程前,必须用export命令导出 。环境变量与本地变量设置方式相同。

4.       有意思的Shell命令提示符

你想让你的命令行提示符变得有意思吗?那就去修改环境变量PS1PS2吧。

例如,我们可以将它们修改为如下:

那么实际的效果会是下面的,如果你的上次命令执行成功的话,就会出现笑脸,否则则是一张哭泣的脸(具体的设置参数可以重新查找资料)。

5.       .bash_profile文件

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件就会被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置。

~/.bash_profile:每个用户都可使用该文件,主要用于自己使用的Shell信息,当用户登录时,该文件仅仅执行一次。默认情况下,他设置一些环境变量,执行用户的~/.bashrc文件。

6.       .bashrc文件

/etc/bashrc:为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。

~/.bashrc:该文件包含当前用户的bash shellbash信息,当登录时以及每次打开新的Shell,该该文件被读取。

7.       bash_logout

~/.bash_logout:当每次退出Shell时,执行该文件。

8.       既然有了~/.bash_profile,为什么还需要~/.bashrc

这两个文件的设置是相同的,对于这个问题,查了一些资料,我是这么想的,.bashrc文件当中主要是设置一些个性化的设置,比如上面说的PS1变量的设置,可以让用户变得灵活,区别不是很大。

9.       getconf

获取系统配置变量。

10.   添加PATH环境变量

也就是修改~/.bash_profile文件,用“:”隔开即可。

<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(1082) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值