[b]Shell字符串使用[/b]
想在shell中表达一个字符串,可以是单引号,双引号,也可以什么也不用。[i]
单引号[/i]
1.使用单引号时候回将字符串的任何的字符都会原样输出,不能使用shell的变量
2.单引号中不能出现单引号
[i]双引号[/i]
1.双引号中可以出现双引号,只不过需要装换一下,也可以使用变量。
2.双引号中可以出现单引号,也是原样输出
[i]什么也不用[/i]
1.直接使用echo后边跟一段字符串就好
运行后的结果
[b]
shell中使用数组[/b]
#shell中数组使用
执行后的结果
想在shell中表达一个字符串,可以是单引号,双引号,也可以什么也不用。[i]
单引号[/i]
1.使用单引号时候回将字符串的任何的字符都会原样输出,不能使用shell的变量
2.单引号中不能出现单引号
[i]双引号[/i]
1.双引号中可以出现双引号,只不过需要装换一下,也可以使用变量。
2.双引号中可以出现单引号,也是原样输出
[i]什么也不用[/i]
1.直接使用echo后边跟一段字符串就好
echo "输出双引号-'单引号出现'"
echo 没有单双引号
##引号的在shell中的使用
#单引号原样输出简单字符串
helloword='hello word'
str="hello,\"$helloword\"!\n"
echo $var
echo $str
#拼接字符串
my_name="Janle"
greeting="hello, $my_name!"
greeting1="hello1, ${my_name} !"
echo -e "$greeting\n$greeting1"
#截取和查询字符串
string="qwertyuiop"
echo "string 的长度为:${#string}"
echo "${string:2:${#string}-1}"
#下标是从1开始算起的
echo `expr index "$string" p`
运行后的结果
输出双引号-'单引号出现'
没有单双引号
hello,"hello word"!\n
hello, Janle!
hello1, Janle !
string 的长度为:10
ertyuiop
10
[b]
shell中使用数组[/b]
#shell中数组使用
array_01=(array_01_1 array_01_2 array_01_3)
array_02=(
array_02_1
array_02_2
array-02_3
)
array_03[0]=array_03_1
array_03[1]=array_03_2
array_03[2]=array_04_3aa
#读取数组
#错误的写法$array_01[0],注意如果找不到对应的数组会输出[0]
echo "输出array_01_1:${array_01[0]}"
#输出所有
echo "${array_02[*]}"
echo "${array_03[@]}"
#获得数组的大小
#如果在 ${#array_01[*]后边没有加}会这么样
#echo "${#array_01[*]后边没有加}"只会输出不会报错,这个要小心
echo "array_01 size ${#array_01[*]};array_02 size ${#array_02[@]}"
#获得单个元素的长度${#array_03[n]}
echo “${#array_03[2]}”
执行后的结果
输出array_01_1:array_01_1
array_02_1 array_02_2 array-02_3
array_03_1 array_03_2 array_04_3aa
array_01 size 3;array_02 size 3
“12”