shell
1.创建变量
使用等号直接赋值,变量名只能以以字母和下划线开头,等号不能有空格 echo输出内容
[root@donglian ~]# str="My name is Sam"
[root@donglian ~]# echo $str
My name is Sam
2.单引号与双引号的区别:
单引号里的任何字符都会原样输出,再拼接的时候会出现时无法显示变量内容,且无法使用转移字符,所以建议使用双引号
[root@donglian ~]# str1=‘this is a string‘
[root@donglian ~]# your_name=‘donglain‘
[root@donglian ~]# str="Hello, I know you are \"$your_name\"! \n"
[root@donglian ~]# echo $str
Hello, I know you are "donglain"! \n
3.通过索引 提取字符串的
索引第一位是0,没有步长切片
echo ${str:2:6}
[root@donglian ~]# echo $str
Hello, I know you are "donglain"! \n
[root@donglian ~]# echo ${str:2:6}
llo, I
[root@donglian ~]# echo ${str:2:7}
llo, I
[root@donglian ~]# echo ${str:2:8}
llo, I k
4.查找字符串索引值
通过查找字符发现索引从1开始计算
echo `expr index "$str" I` 脚本中的 `是反引号,不是‘单引号
[root@donglian ~]# echo $str
Hello, I know you are "donglain"! \n
[root@donglian ~]# echo `expr index "$str" I`
8
[root@donglian ~]# echo `expr index "$str" H`
1
5.shell数组
类似Python的元组不过是以空格隔开,可以通过索引值
直接赋值添加
root@donglian ~]# array=(val0 val1 val2)
通过索引添加
[root@donglian ~]# array_name[0]=val0
[root@donglian ~]# array_name[1]=val1
读取数组
${数组[下标]}
[root@donglian ~]# echo ${array[1]}
val1
显示所有元素
[root@donglian ~]# echo ${array[@]}
val0 val1 val2
shell注释
单行注释#
多行注释
默认使用EOF对应开头结尾 或者使用其他符号
:<<EOF
注释内容...
注释内容...
注释内容...
EOF
:<<!
注释内容...
注释内容...
注释内容...
原文:https://www.cnblogs.com/donglian1/p/12883872.html