shell 操作字符串 变量 数组

 1 #!/bin/bash
 2 name="jack"
 3 #使用双引号拼接
 4 #greeting="hello,"$name"!"
 5 #greeting_1="hello,${name} !"#输出实参
 6 #echo $greeting $greeting_1
 7 #使用单引号拼接
 8 #greeting_2='hello,'$name'!'
 9 #greeting_3='hello,${name}'#原样输出
10 #echo $greeting_2 $greeting_3
11 
12 #获取字符串长度
13 #string="abcd"
14 #echo ${#string} #输出4
15 
16 #提取字符串
17 #string="runoob is a great site"
18 #echo ${string:1:4} #输出unoo 下标从0开始
19 #查找字符串
20 #string="runoob is a great site"
21 #echo `expr index "$string" io` #输出4 下标从1开始
22 #定义数组  下标从0开始,元素之间使用“空格”分隔
23 #定义数组一般形式
24 array_name=("立白" "太渍" "奇强" "滴露")
25 
26 # 还可以这样定义数组
27 array_name1=(
28 "赵子龙"
29 诸葛亮
30 "曹操")
31 
32 #单独定义数组的各个元素
33 array_name[1]="温太医"
34 #读取数组
35 #输出整个数组
36 #echo ${array_name[@]}  
37 #或
38 #echo ${array_name1[*]}
39 
40 #echo ${array_name1} #不加[@]或[*]默认返回第1个值 赵子龙
41 
42 #echo ${array_name[9]} #下标越界会啥也不输出 echo回显一个空行
43 #echo ${array_name1[2]} #曹操
44 
45 #获取数组的长度
46 # 获取整个数组元素的个数
47 #length=${#array_name[*]}
48 #length1=${#array_name[@]}
49 #echo ${length} ${length1} #输出4 4
50 #取得数组单个元素的长度
51 #length=${#array_name1[0]} #"赵子龙" 3
52 #length1=${#array_name1[1]} #诸葛亮 3
53 #echo ${length} ${length1} #输出3 3
54 #shell多行注释
55 #可以把一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果.我试了怎么没有效果呢??? 还是可以输出的
56 {
57 echo "123"
58 echo "abc"
59 echo "洛神"
60 }
61 #还可以使用:<<这种格式 如:
62 :<<EOF
63 echo "123"
64 echo "abc"
65 echo "洛神"
66 EOF
67 
68 #EOF也可以使用其它符号
69 :<<!
70 echo "123"
71 echo "abc"
72 echo "洛神"
73 !

 

posted @ 2019-08-24 09:42  wangju003  阅读(370)  评论(0编辑  收藏  举报