Linux学习(二十二)Shell基础(二)变量、环境变量配置文件

时间:2021-05-09 11:25:17

一、变量

变量是一个容器,里面能放不同的值。

要点知识:

Linux学习(二十二)Shell基础(二)变量、环境变量配置文件

PATH,HOME,PWD,LOGNAME这些都是变量。

例子:

[root@ruanwenwu02 ~]# echo a+b
a
+b
[root@ruanwenwu02
~]# echo $a+$b
3+4
[root@ruanwenwu02
~]# echo $a3$bc

[root@ruanwenwu02
~]# echo $a3$b
4
[root@ruanwenwu02
~]# echo $a"3"$b
334

变量的累加:

[root@ruanwenwu02 ~]# echo a+b
a
+b
[root@ruanwenwu02
~]# echo $a+$b
3+4
[root@ruanwenwu02
~]# echo $a3$bc

[root@ruanwenwu02
~]# echo $a3$b
4
[root@ruanwenwu02
~]# echo $a"3"$b
334

删除一个变量:

[root@ruanwenwu02 ~]# echo $a
3
[root@ruanwenwu02
~]# unset a
[root@ruanwenwu02
~]# echo $a

在一个终端下定义的变量在另一个终端下不能使用,如果要使用,必须将变量放在环境变量的配置文件中定义。如果希望变量在子shell中可以使用,可以export一下:

[root@iZ25lzba47vZ ~]# a=3
[root@iZ25lzba47vZ
~]# echo $a
3
[root@iZ25lzba47vZ
~]# bash
[root@iZ25lzba47vZ
~]# echo $a

[root@iZ25lzba47vZ
~]# a=4
[root@iZ25lzba47vZ
~]# echo $a
4
[root@iZ25lzba47vZ
~]# export a
[root@iZ25lzba47vZ
~]# bash
[root@iZ25lzba47vZ
~]# echo $a
4

二、环境变量配置文件

要点:

Linux学习(二十二)Shell基础(二)变量、环境变量配置文件

如果我们vim ~/.bash_profile,我们会发现:

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
.
~/.bashrc
fi

# User specific environment and startup programs

PATH
=$PATH:$HOME/bin

export PATH

原来.bash_profile文件会包含.bashrc。

PS1:

Linux学习(二十二)Shell基础(二)变量、环境变量配置文件

实验:

[root@iZ25lzba47vZ yum.repos.d]# PS1='\u@\h \w'
root@iZ25lzba47vZ
/etc/yum.repos.d