当前位置:首页>Linux>Linux自学第15天

Linux自学第15天

  • 2026-09-08 18:04:55
Linux自学第15天
今天继续把Shell变量剩下的部分学完。

一、Shell 字符串

字符串可以用单引号、双引号、也可以不用引号。

1.单引号

str='this is a dog'

2.双引号

your_name="zu"str="Hello, I know you are \"$your_name\"! \n"echo -e $str

输出结果:

Hello, I know you are "zu"! 

3.拼接字符串

your_name="zu"greeting="hello, "$your_name" !" # 使用双引号拼接greeting_1="hello, ${your_name} !"echo $greeting  $greeting_1
greeting_2='hello, '$your_name' !' # 使用单引号拼接greeting_3='hello, ${your_name} !'echo $greeting_2  $greeting_3

输出结果:

hello, runoob ! hello, runoob !hello, runoob ! hello, ${your_name} !

4.获取字符串长度

string="abc"echo ${#string}   # 输出 3

变量为字符串时,${#string} 等价于 ${#string[0]}

string="abc"echo ${#string[0]}   # 输出 3

5.提取子字符串

string="zuzuzuzu is a great site" #从字符串第 2 个字符开始截取 4 个字符echo ${string:1:4} # 输出 uzuz第一个字符的索引值为 0。 

6.查找子字符串

查找字符 u 的位置:

string="zu is a great site"echo `expr index "$string" io`  # 输出 2

二、Shell 数组(bash支持一维数组,并且没有限定数组的大小)

1.定义数组

在 Shell 中,用括号来表示数组,数组元素用"空格"符号分割开。一般形式为:

数组名=(值1 值2 ... 值n)
array_name=(value0 value1 value2 value3)

或

array_name=(value0value1value2value3)

或单独定义数组的各个分量:

array_name[0]=value0array_name[1]=value1array_name[n]=valuen

2.读取数组

一般格式是:

${数组名[下标]}

例如:

valuen=${array_name[n]}

使用 @ 符号可以获取数组中的所有元素,例如:

echo ${array_name[@]}

3.获取数组的长度

获取数组长度的方法与获取字符串长度的方法相同

length=${# array_name[@]}# 取得数组元素的个数length=${#array_name[*]}length=${#array_name[n]}# 取得数组单个元素的长度

三、Shell 注释

1.以 # 开头的行就是注释

#--------------------------------------------# 这是一个注释# author:组# site:www.zu.com#--------------------------------------------##### 用户配置区 开始 ######## 这里可以添加脚本描述信息####### 用户配置区 结束  #####

2.多行注释

多行注释还可以使用以下格式:

:<<EOF注释内容...注释内容...注释内容...EOF#以上例子中,: 是一个空命令,用于执行后面的 Here 文档,#<<'EOF' 表示开启 Here 文档,COMMENT 是 Here 文档的标识符,#在这两个标识符之间的内容都会被视为注释,不会被执行。

EOF 也可以使用其他符号:

: <<'COMMENT'这是注释的部分。可以有多行内容。COMMENT:<<'注释内容...注释内容...注释内容...':<<!注释内容...注释内容...注释内容...!

直接使用 : 号.

格式为:: + 空格 + 单引号。

: '这是注释的部分。可以有多行内容。'

最新文章

随机文章