shell脚本
shell脚本
#!/bin/bash (解释器)
#ifconfig
#shell 变量
name=“aaa”
echo $name
#变量命名规范
1:首字母不可以出现数字:8name=“aaa” x
2:变量名中间不能出现空格,可以用下划线(_)n_name=“aaa”
3:变量名中间不能出现标点符号
只读变量
readonly
删除变量
unset (对只读变量无效!!!)
变量类型
局部变量 : 在脚本或者命令中定义,仅在当前shell实例中有效
环境变量 : 所有的程序都能访问到 。显示系统自带的环境变量:env
1 vim /etc/profile
2 export WG=“aaa”
3 source /etc/profile
shell中单双引号的区别
/双引号可以解析变量 双引号包含单引号–在双引号之间的’$a’看做了一个整体/
a
=
′
H
e
l
l
o
W
o
r
l
d
!
′
;
e
c
h
o
"
′
a = 'Hello World!'; echo "'
a=′HelloWorld!′;echo"′a’";
输入结果 ‘Hello World’
/单引号不可以解析变量 单引号包含双引号–在单引号之间的"$d"看做了一个整体/
d
=
′
你
好
,
世
界
!
′
;
e
c
h
o
′
"
d = '你好,世界!'; echo '"
d=′你好,世界!′;echo′"d"’;
输入结果 “$d”
*****(双引号内的变量会被解释,而单引号内的变量则原样输出)
双引号可以有变量
获取字符串的长度
echo ${#str}
字符串截取
1利用索引截取
echo ${str:10:4} 表示从10个下标开始截取,截取3个宁符
2使用#截取
echo ${var#0}
0表示从左往右找第个0, 截取0之后的所有字符
echo ${var ##0}
两个#表示从右往左找第一个0, 截取0之后的字符
echo ${var%0}
一个%表示从右往左找第一个0, 截取0之前的字符
echo ${var%%0}
两个%表示从左往右找第一个0,截取0之前的字符
shell的数组
定义数组:shuzu=(aa bb cc dd)
获取数组的所有元素
echo ${shuzu [@]}
echo ${shuzu[]}
获取数组元素的个数
echo $ {#shuzu []}