SHELL (变量环境变量)
- 前言
- 一、shell脚本中变量的定义方法
- 二、变量的转译
- 1.转译
- 2.声明
- 3.变量的数组
- 三、Linux中命令的别名设定
- 四、用户环境变量的修改
- 1.环境变量:
- 2.设定方式:
- 五、利用命令的执行结果设定变量
- 1.直接利用命令执行结果
- 2.脚本中的传参
- 1.非交互模式
- 2.交互模式传参
前言
shell变量是一种很“弱”的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义。所以若要进行数学运算,必须使用一些命令例如let、declare、expr、双括号等。shell变量可分为两类:局部变量和环境变量。局部变量只在创建它们的shell中可用。而环境变量则可以在创建它们的shell及其派生出来的任意子进程中使用。
一、shell脚本中变量的定义方法
1.环境级别
export a=1
在环境关闭后变量失效
2.用户级别
vim ~/ .bash_ profile
export a=1
3.系统级别
vim /etc/profile
export a=2
vim /etc/profile. d/westos. sh
export b=3
4.变量名称
"字符" "_” "数字"
不能用数字开头
建议:
变量名称短全用大写字符
变量名称长用_区分子类
WESTOS
Westos_Linux
westoS_Linux
二、变量的转译
1.转译
1. \ ##转译单个字符
2. "" ##弱引用,批量转移个数字符,不能转译"\" "`" "$" "!"
3. '' ##强引用
2.声明
1. a=1
2. echo $ab
3. echo ${a}b
3.变量的数组
- a=(1 2 3 4 5)
- echo ${a[0]}
- echo ${a[-1]}
- echo ${a[*]}
- echo ${a[@]}
三、Linux中命令的别名设定
- alias xie='vim' ##临时设定
- vim ~/.bashrc ##只针对于用户生效
- aliasxie='vim'
- vima/etc/bashrc ##针对系统所以用户生效
- alias xie='vim'
- unalias xie ##删除当前环境中的alias
四、用户环境变量的修改
1.环境变量:
用户在操作系统时使用到的命令搜索路径
2.设定方式:
1. ~/ . bash_ profile
2. export PATH=$PATH:/mnt
3. /etc/bash_ profile
4. export PATH=$PATH:/mnt
五、利用命令的执行结果设定变量
1.直接利用命令执行结果
1.$ () | `` ##优先执行
2.TEST=`hostname` TEST=$(hostname)
2.脚本中的传参
1.非交互模式
1.$0 is / mnt/test.sh ##脚本本身
2.$1 is westos ##脚本后所输入的第一串字符
3.$2 is linux
4.$3 is redhat
5.$* is westos linux redhat ##脚本后所输入的所有字符"westos linux redhat"
6.$@ is westos linux redhat ##脚本后所输入的所有字符'westos' 'tinux' ' redhat'
7.$# is 3 #脚本后所输入的字符串个数
2.交互模式传参
1.read WESTOS ##对westos赋值