加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

shell

发布时间:2020-12-13 22:29:33 所属栏目:Linux 来源:网络整理
导读:1.获取字符串长度 ${#string_name} 例如: #!/bin/bash str="http://c.biancheng.net/shell/" echo ${#str} 运行结果: 29 2.字符串的拼接 在Shell中你不需要使用任何运算符,将两个字符串并排放在一起就能实现拼接,非常简单粗暴。 3.从指定位置开始截取 格

1.获取字符串长度
${#string_name}
例如:
#!/bin/bash
str="http://c.biancheng.net/shell/"
echo ${#str}

运行结果:
29

2.字符串的拼接
在Shell中你不需要使用任何运算符,将两个字符串并排放在一起就能实现拼接,非常简单粗暴。

3.从指定位置开始截取
格式说明
${string: start :length}
从 string 字符串的左边第 start 个字符开始,向右截取 length 个字符。
${string: start}
从 string 字符串的左边第 start 个字符开始截取,直到最后。
${string: 0-start :length}
从 string 字符串的右边第 start 个字符开始,向右截取 length 个字符。
${string: 0-start}
从 string 字符串的右边第 start 个字符开始截取,直到最后。
${string#*chars}
从 string 字符串第一次出现 *chars 的位置开始,截取 *chars 右边的所有字符。
${string##*chars}
从 string 字符串最后一次出现 *chars 的位置开始,截取 *chars 右边的所有字符。
${string%*chars}
从 string 字符串第一次出现 *chars 的位置开始,截取 *chars 左边的所有字符。
${string%%*chars}
从 string 字符串最后一次出现 *chars 的位置开始,截取 *chars 左边的所有字符。

4.Shell数组定义以及获取数组元素
在 Shell 中,用括号( )来表示数组,数组元素之间用空格来分隔。由此,定义数组的一般形式为:
array_name=(ele1 ele2 ele3 ... elen)
注意,赋值号=两边不能有空格,必须紧挨着数组名和数组元素。

Shell 是弱类型的,它并不要求所有数组元素的类型必须相同,例如:
arr=(20 56 "http://c.biancheng.net/shell/")

Shell 数组的长度不是固定的,定义之后还可以增加元素。

获取数组元素
获取数组元素的值,一般使用下面的格式:
${array_name[index]}

其中,array_name 是数组名,index 是下标。
例如:
n=${nums[2]}
表示获取 nums 数组的第二个元素,然后赋值给变量 n。
再如:
echo ${nums[3]}
表示输出 nums 数组的第 3 个元素。

使用@或*可以获取数组中的所有元素,例如:
${nums[*]}
${nums[@]}

拼接数组
利用@或*,可以将数组扩展成列表,然后使用#来获取数组元素的个数,格式如下:
${#array_name[@]}
${#array_name[*]}
其中 array_name 表示数组名。两种形式是等价的,选择其一即可。
拼接数组的思路是:先利用@或*,将数组扩展成列表,然后再合并到一起。具体格式如下:
array_new=(${array1[@]} ${array2[@]})
array_new=(${array1[*]} ${array2[*]})
两种方式是等价的,选择其一即可。其中,array1 和 array2 是需要拼接的数组,array_new 是拼接后形成的新数组。

删除数组元素
在 Shell 中,使用 unset 关键字来删除数组元素,具体格式如下:
unset array_name[index]
其中,array_name 表示数组名,index 表示数组下标。
如果不写下标,而是写成下面的形式:
unset array_name
那么就是删除整个数组,所有元素都会消失。

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读