您好,欢迎来到华佗养生网。
搜索
您的当前位置:首页shell脚本中的变量

shell脚本中的变量

来源:华佗养生网

一、变量的定义

二、变量的意义

命令无法操作一直变化的目标;通过用一串固定的字符来表示不固定的目标,这就是变量的意义

三、shell脚本中变量的定义方法

1、变量名称的定义规则

变量名称中可包含的字符:字母、下划线、数字

变量名称不能以数字开头

变量名称短时建议全用大写字符;变量名称长时建议使用_下划线来区分子类

2、环境级别的变量定义

使用 export 命令来进行环境变量的定义

3、用户级别的变量定义

环境级变量的设定在环境关闭或改变后重新打开时因shell的资源被系统回收导致原来的变量设定不会继续生效

4、系统级别的变量定义

四、变量的转译

1、转译

\                ##转译单个字符

" "                ##批量转译(弱引用;不能转译【\】【$】【!】【`】)

' '                ##批量转译(强引用)

2、声明

使用{}对变量进行声明

3、变量的数组

设定 a=(1  2  3  4  5)

echo  ${a[0]}                ##显示数组中的第一个元素

echo  ${a[1]}                ##显示数组中的第二个元素

echo  ${a[*]}                ##显示数组中的全部元素

echo  ${a[@]}                ##显示数组中的全部元素

echo  ${a[@]:0:3}                ##显示数组中从0元素开始后面的3个元素

echo  ${#a[@]}                ##数组中元素的个数

unset  a[n]                ##删除数组a中的第n+1个元素

unset  a                ##删除数组

***数组中*和@的区别:

五、Linux中命令的别名设定

alias  wang='date'                ##临时设定

vim  ~/.bashrc                ##永久设定;只针对当前用户生效

vim  /etc/bashrc                ##永久设定;针对系统中所有用户生效

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

六、用户环境变量的更改

1、直接使用命令的执行结果

$(date)==`date`                ##优先执行

2、脚本中的传参

非交互模式传参:

$0                ##脚本本身

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

$2                ##脚本后输入的第二串字符

$*                ##脚本后输入的所有字符(“1  2  3”)

$@                ##脚本后输入的所有字符(“1”  “2”  “3”)

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

交互模式传参:

read  -p  "Please input word:  "  (-s)  WORD               

##-p==显示提示语句;-s==隐藏录入内容;WORD==变量

echo  $WORD

##显示变量的值

七、脚本函数

脚本函数本质上就是程序的别名;函数可以使脚本动作循环执行;其设定格式为

函数名称()

{

        action1

        action2

        action3

        ...

}

函数名称

##在脚本中,函数名称即代表了action1&action2&action3等命令动作

 

小练习:

sh  create_user.sh

please input username:xxx

xxx=exit时脚本退出

xxx存在时:xxx is exist

please input username:xxx

xxx不存在时:

please input password:(不显示内容)

建立用户并且密码会设定为password后输入的字符 

echo:xxx is created 

please input username:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo7.cn 版权所有 湘ICP备2022005869号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务