目录
###1.变量的定义###
###2.shell脚本中变量的定义方法###?
变量级别??
ENV?
变量名称
###3.变量的转译###
转译
声明
变量的数组
###4.Linux中命令的别名设定###
###5.用户环境变量的更改###
设定方式?
利用命令执行结果
脚本中的传参
###7.脚本函数###
###1.变量的定义###
定义本身
变量就是内存一片区域的地址
变量存在的意义
#### 命令无法操作一直变化的目标
用一串固定的字符来表示不固定的目标可以解决此问题
###2.shell脚本中变量的定义方法###?
变量级别
#### 环境级别
export a=1 在环境关闭后变量失效 #### 用户级别
vim ~/.bash_profile
export a=1 #### 系统级别
vim /etc/profile
export a=2
vim /etc/profile.d/westos.sh
export b=3
ENV
变量名称
建议:短名称用大写字母;长名称用"_"区分子类
命名只能使用英文字母,数字和下划线
首个字符不能以数字开头
中间不能有空格
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
###3.变量的转译###
转译
\? ? ?#转译单个字符
" "? #弱引用,批量转译个数字符 不能转译"\ " "" "$" "!"
' '? ?#强引用
声明
a=1
echo $ab
echo ${a}b
变量的数组
a=(1 2 3 4 5)
a$[a[@]:起始元素id:元素个数]
a=(1 2 3 4 5) ${a[0]}?? ?数组第一个元素 ${a[-1]}?? ?数组最后一个元素 ${a[*]}?? ?所有元素 ${a[@]}?? ?所有元素 ${a[*]:1:4}?? ?第2-5个元素 ${a[@]:1:4}?? ?第2-5个元素 ${#a[@]}?? ?元素个数 ${#a[*]}?? ?元素个数
unset a[n]? ##删除数组中的第n1个元素
unset a? ? ? ##删除a这个数组
a[4]=5? ? ? ? ##添加元素?
###4.Linux中命令的别名设定###
alias xie='vim'? ? ##临时设定 vim ~/.bashrc alias xie='vim'? ? ##只针对与用户生效 vim /etc/bashrc? ##针对系统所以用户生效 alias xie='vim' unalias xie? ? ? ? ##删除当前环境中的alias?
###5.用户环境变量的更改###
设定方式
~/.bash_profile
export PATH=$PATH:/mnt
/etc/bash_profile
export PATH=$PATH:/mnt
利用命令执行结果
$ () |? ? ?##优先执行
TEST=hostname
TEST=$(hostname)
脚本中的传参
非交互模式
$0? ? ?##脚本本身 $1? ? ?##脚本输入后的第一串字符 $2? ? ?##脚本输入后的第2串字符 $3? ? ?##脚本输入后的第3串字符 $#? ? ?##脚本后输入字符串的个数 $*? ? ? ##脚本输入的所有字符(一个整体) $@? ? ##脚本输入的所有字符(多个整体) $$? ? ? ##脚本运行的当前进程ID号 $!? ? ? ?##后台运行的最后一个进程的ID号 $?? ? ? ##显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误 交互模式
read? ?WESTOS ##对westos赋值
read? ?p? ?"please input word:" ##输出提示语 s ##隐藏输入内容?
###7.脚本函数###
定义:程序的别名
函数名()? ? {
action1; action2;
}
|