当前位置: 首页 > wzjs >正文

江门市做网站免费小程序平台

江门市做网站,免费小程序平台,天津市建设行业联合会网站,刷粉网站开发目录 一.变量 1.1什么是变量 1.2变量的命名 1.3变量的调用 1.4字符的转义 1.5变量的取消 二.变量的类型 2.1函数级变量 2.2环境级变量 2.3用户级变量 2.4系统级变量 2.5常见的系统变量 三..特殊变量及定义 3.1用命令的执行结果定义变量 3.2传参变量 3.3交互式传…

目录

一.变量

1.1什么是变量

1.2变量的命名 

1.3变量的调用

1.4字符的转义

1.5变量的取消

二.变量的类型

2.1函数级变量

2.2环境级变量

2.3用户级变量

2.4系统级变量

2.5常见的系统变量

三..特殊变量及定义

3.1用命令的执行结果定义变量

3.2传参变量

3.3交互式传参变量

3.4数组变量

3.5字符串变量

四.shell脚本中的函数

五.shell中的运算

练习:倒计时脚本


一.变量

1.1什么是变量

  • 变量是使用一串固定的字符来表示不固定的值
  • 变量的实现原理就是内存存储单元的一个符号名称

1.2变量的命名 

  • 变量的名称只能包含数字,大小写字母,以及下划线
  • 变量的名称开头只能用大小写字母及下划线开头,不能使用数字开头
  • 同一个名称变量,在多次被赋值时为覆盖操作
  • 变量的名称复杂可以使用驼峰命令发中间用下划线隔开

1.3变量的调用

变量的调用使用到$符

在对变量赋值后,使用$符直接调用变量名称

如果要表示1number

在调用变量的时候使用{}把变量名称括起来,{}可以对数组变量,字符串变量进行操作

1.4字符的转义

  • 在shell中有很多本身有特殊功能的字符,比如( ' \ ! $),所以就需要转义
  • 在shell中表示转义的有,反斜杠 /,双引号 " ",单引号 ' '
  • 双引号与单引号表示批量转义,区别在于双引号为弱引用,单引号为强引用,弱引用不能引用( ' \ ! $)

1.5变量的取消

unset 变量名

二.变量的类型

2.1函数级变量

在脚本中编辑函数定义变量,定义函数级变量,要加local不然默认会把函数的变量传出去函数外

2.2环境级变量

2.3用户级变量

2.4系统级变量

[root@FJWYYY ~]# vim /etc/profile
[root@FJWYYY ~]# source /etc/profile        #使其配置立刻生效

2.5常见的系统变量

三..特殊变量及定义

3.1用命令的执行结果定义变量

3.2传参变量

由于脚本要接受用户命令行的输入,从命令行传递给shell脚本的参数称为位置参数,使用不同的位置变量来读取位置参数的值

[root@FJWYYY ~]# vim test1.sh
[root@FJWYYY ~]# sh test1.sh X1 X2 X3 #三个输入参数
$0 is test1.sh
$1 is X1
$2 is X2
$3 is X3
$@ is X1 X2 X3
$* is X1 X2 X3
$# is 3

3.3交互式传参变量

使用read命令进行交互式传参赋值变量

#运行命令
[root@FJWYYY ~]# read A
hello
[root@FJWYYY ~]# echo $A
hello
[root@FJWYYY ~]# read A B C
X1 X2 X3
[root@FJWYYY ~]# echo $A $B $C
X1 X2 X3
[root@FJWYYY ~]# read -a arry        #-a 用来定义一个数组变量
1 2 3 4 5
[root@FJWYYY ~]# echo ${arry[@]}
1 2 3 4 5
[root@FJWYYY ~]# echo ${arry[0]}
1
[root@FJWYYY ~]# echo ${arry[-1]}
5
[root@FJWYYY ~]# echo ${#arry[*]}
5
[root@FJWYYY ~]# read -p "Please input word:" A      
Please input word:123
[root@FJWYYY ~]# echo $A
123
[root@FJWYYY ~]# read -p "Please input word:" -s A
Please input word:[root@FJWYYY ~]# echo $A
456
[root@FJWYYY ~]# read -t 5 A
[root@FJWYYY ~]# read -n 5 A
12345[root@FJWYYY ~]# echo $A
12345
[root@FJWYYY ~]# read -d "." A
12345678.[root@FJWYYY ~]# echo $A
12345678
[root@FJWYYY ~]#

3.4数组变量

shell中的数组变量操作

#运行命令[root@FJWYYY ~]# A=(1 2 3 4 5)[root@FJWYYY ~]# echo $A
1
[root@FJWYYY ~]# echo ${A[*]}
1 2 3 4 5
[root@FJWYYY ~]# echo ${A[@]}
1 2 3 4 5
[root@FJWYYY ~]# echo ${A[0]}
1
[root@FJWYYY ~]# echo ${A[1]}
2
[root@FJWYYY ~]# echo ${A[-1]}
5
[root@FJWYYY ~]# echo ${A[*]:0:3}
1 2 3
[root@FJWYYY ~]# echo ${#A[*]}
5
[root@FJWYYY ~]# echo ${#A[@]}
5
[root@FJWYYY ~]# A[3]=8
[root@FJWYYY ~]# echo ${A[@]}
1 2 3 8 5
[root@FJWYYY ~]# unset A[0]
[root@FJWYYY ~]# echo ${A[@]}
2 3 8 5
[root@FJWYYY ~]#

3.5字符串变量

shell中的字符串变量操作

[root@FJWYYY ~]# a="easy/lee/test.tar.gz"
[root@FJWYYY ~]# echo ${a}
easy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${#a}
20
#指定字符
[root@FJWYYY ~]# echo ${a:5}
lee/test.tar.gz
[root@FJWYYY ~]# echo ${a:1}
asy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${a:0-3}
.gz
[root@FJWYYY ~]# echo ${a:5:2}
le
[root@FJWYYY ~]# echo ${a:0-3:2}
.g
[root@FJWYYY ~]# echo ${a::3}
eas
#检索删除
[root@FJWYYY ~]# echo ${a#*/}
lee/test.tar.gz
[root@FJWYYY ~]# echo ${a#/*}
easy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${a##/*}
easy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${a##*/}
test.tar.gz
[root@FJWYYY ~]# echo ${a%*/}
easy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${a%/*}
easy/lee
[root@FJWYYY ~]# echo ${a%%/*}
easy
[root@FJWYYY ~]# echo ${a%%*/}
easy/lee/test.tar.gz
#字符替换
[root@FJWYYY ~]# echo ${a/./@}
easy/lee/test@tar.gz
[root@FJWYYY ~]# echo ${a//./@}
easy/lee/test@tar@gz
[root@FJWYYY ~]# echo ${a/./#}
easy/lee/test#tar.gz
[root@FJWYYY ~]# echo ${a//./#}
easy/lee/test#tar#gz
[root@FJWYYY ~]# echo ${a#}
easy#lee#test.tar.gz
[root@FJWYYY ~]# echo ${a///#}
easy/lee/test.tar.gz
[root@FJWYYY ~]# echo ${a/\//#}
easy#lee/test.tar.gz

四.shell脚本中的函数

脚本中的函数也可寓为脚本中的脚本

以下是一个更换颜色的脚本,没有运用到函数

以下是用了函数的更换颜色的脚本

以下是一个交互式的输入脚本,做到了无限循环

五.shell中的运算

shell中的运算命令

练习:倒计时脚本


文章转载自:

http://RukGFPCN.sfjqy.cn
http://eNROSoY9.sfjqy.cn
http://v7QEcIUc.sfjqy.cn
http://GXlYpGam.sfjqy.cn
http://r5AEOwiV.sfjqy.cn
http://pQWZyLkp.sfjqy.cn
http://KBlKU7iU.sfjqy.cn
http://qUs5N9pf.sfjqy.cn
http://jEiGdtXs.sfjqy.cn
http://IbKvNUDK.sfjqy.cn
http://BjQoIYw7.sfjqy.cn
http://YscmfdsP.sfjqy.cn
http://ucgGcRqu.sfjqy.cn
http://PNlqfomi.sfjqy.cn
http://rbb6ksJG.sfjqy.cn
http://leJrvmQG.sfjqy.cn
http://JNfqZ0og.sfjqy.cn
http://4eJJOWzE.sfjqy.cn
http://mpJa9btv.sfjqy.cn
http://E5gJw5Cx.sfjqy.cn
http://ChLCKcVc.sfjqy.cn
http://7jihLTTq.sfjqy.cn
http://iSNaRVVl.sfjqy.cn
http://UwHJegKt.sfjqy.cn
http://VfEaVpal.sfjqy.cn
http://QMOKh1TB.sfjqy.cn
http://jRDGWoeo.sfjqy.cn
http://aOiOiVje.sfjqy.cn
http://vLhn18zm.sfjqy.cn
http://p3Wq76NN.sfjqy.cn
http://www.dtcms.com/wzjs/627576.html

相关文章:

  • phpcms双语网站怎么做长沙关键词优化新报价
  • 免费网站建设软件网站开发简历 自我评价
  • 网站开发文档的示例做网站的成本在哪
  • 网站开发的主要技术难点和重点xp系统做网站服务器吗
  • 免费建靓号网站公司网站建设应包含哪几个板块
  • asp网站改php网站方法滁州项目建设公示在哪个网站
  • 做网站要几个人 要多少钱网站备案回访电话号码
  • 做羞羞事免费网站别人网站 自己的域名
  • 怎么开通网站和进行网页设计在线小公司网站制作
  • 怎么自己做网站链接网站后端架构如何做
  • 像美团这种网站怎么做的创建蛋糕网站建设方案
  • 如何向百度提交网站展馆装修施工
  • 网站开发步奏wordpress导入火车头
  • 网站开发部门工作职责工作纪律和生活纪律研讨发言材料
  • 湛江怎么做网站关键词优化家博会
  • 台州市城市建设投资公司网站二建电子证书查询入口
  • 婚恋网网站架构网站网站建设平台
  • 广州市住房建设部网站社区推广经验做法
  • 集团网站制作公司2017年做网站维护总结
  • 网站前端模板mitao wordpress
  • 做问卷调查赚钱的网站好宝安做棋牌网站建设有哪些公司
  • 南山做网站公司怎么选择wordpress导航菜单居中
  • 江西中联建设集团有限公司网站网站开发兼职
  • 2018网站做外链湛江自助建站软件
  • 南阳做网站的公企业公司网站建设公司
  • 青岛网站建设技术托管阿里云网站架构怎么做
  • 龙南县建设局网站500强网站设计
  • iis怎么做ip网站吗淘宝店做网站建设不能开直通车
  • 建设网站的网站叫什么男深圳定制建站
  • 海口网站制作策划创意广告设计培训