shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

一.变量的定义:

1.定义本身

变量就是内存一片区域的地址

2.变量存在的意义

命令无法操作一直变化的目标

用一串固定的字符来表示不固定的目标可以解决此问题

二.shell脚本中变量的定义方法

1.环境级别

export a=1

环境关闭后变量失效

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

2.用户级别

vim ~/.bash_profile

export a=2

用户切换后变量失效

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

3.系统级别

vim /etc/profile

export a=3

系统内均有效

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

三.变量的转译

1.转译

\     #转译单个字符

" "    #弱引用,批量转移个数字符,不能转译"\" "`" "$" "!"

''    #强引用

2.声明

a=1

echo $ab

echo ${a}b

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

3.变量的数组

a=(1 2 3 4 5)

echo ${a[0]}       #输出第一列

echo ${a[-1]}      #输出最后一列

echo ${a[*]}        #一次输出全部

echo ${a[@]}      #n次输出全部

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

四.linux中的命令的别名设定

alias xie='vim'    #临时设定

vim ~/.bashrc      #只针对于用户生效

alias xie='vim'    

vima/etc/bashrc    #针对系统所以用户生效

alias xie='vim'

unalias xie        #删除当前环境中的alias

五.用户环境变量的更改

1.环境变量:

用户在操作系统时使用到的命令搜索路径

2.设定方式:

~/.bash_profile

export PATH=$PATH:/mnt

/etc/bash_profile

export PATH=$PATH:/mnt

六.利用命令的执行结果设定变量

1.直接利用命令执行结果

$()|``                               #优先执行

TEST=`hostname`      TEST=$(hostname)

2.脚本中的传参

非交互模式:

$0 is / mnt/test.sh              #脚本本身

$1 is westos                     #脚本后所输入的第一串字符

$2 is linux

$3 is redhat

$* is westos linux redhat        #脚本后所输入的所有字符"westos linux redhat"

[email protected] is westos linux redhat        #脚本后所输入的所有字符'westos' 'tinux' ' redhat'

$# is 3                          #脚本后所输入的字符串个数

交互模式:

read WESTOS             #对westos赋值

七.练习

1.添加文件中所写的用户名称到系统中

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

2.添加,删除用户

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)

shell中的变量(变量,shell中变量定义的方法,变量转移,命令名称更改,用户环境变量更改,设定变量)