shell脚本定义数组 Bash Shell脚本中的数组使用实例

11/28 01:14:48 来源网站:辅助卡盟平台

以下为输出:

[root@localhost ~]# ./arraymain.sh 
Debian Ubuntu Suse Fedora UTS OpenLinux

shell脚本和python脚本_shell脚本定义数组_shell脚本遍历数组

在此示例中,${Unix[@]:0:$pos}值获取第1个索引的元素,,而${Unix[@]:$(($pos + 1))}将从第3个索引到最后一个索引。并合并以上两个输出。这是从数组中删除元素的解决方法之一。

11.使用正则表达式删除数组中的元素

在搜索条件中,可以给出正则表达式,并将剩余的元素存储到另一个数组中,如下所示。

[root@localhost ~]# cat arraymain2.sh 
#! /bin/bash
declare -a Unix=('Debian' 'Red hat' 'Ubuntu' 'Suse' 'Fedora')
declare -a pattern=( ${Unix[@]/Red*/} )
echo ${pattern[@]}

shell脚本遍历数组_shell脚本和python脚本_shell脚本定义数组

以下为输出:

[root@localhost ~]# ./arraymain2.sh 
Debian Ubuntu Suse Fedora

shell脚本遍历数组_shell脚本和python脚本_shell脚本定义数组

上面的示例中删除了包含"Red"字符的元素。实际是将"Red*"替换为空字符。

12.复制数组

以下实例是将Unix数组复制到Linux数组中:

[root@localhost ~]# cat arraymain.sh 
#!/bin/bash
Unix=('Debian' 'Red hat' 'Ubuntu' 'Suse' 'Fedora' 'UTS' 'OpenLinux')
Linux=("${Unix[@]}")
echo ${Linux[@]}

以下为输出:

[root@localhost ~]# ./arraymain.sh 
Debian Red hat Ubuntu Suse Fedora UTS OpenLinux

shell脚本遍历数组_shell脚本定义数组_shell脚本和python脚本

13.两个数组的关联

展开两个数组的元素,然后将其分配给新数组:

[root@localhost ~]# cat arraymain.sh 
#!/bin/bash
Unix=('Debian' 'Red hat' 'Ubuntu' 'Suse' 'Fedora' 'UTS' 'OpenLinux');
Shell=('bash' 'csh' 'jsh' 'rsh' 'ksh' 'rc' 'tcsh');
UnixShell=("${Unix[@]}" "${Shell[@]}")
echo ${UnixShell[@]}
echo ${#UnixShell[@]}

以下为输出:

[root@localhost ~]# ./arraymain.sh 
Debian Red hat Ubuntu Suse Fedora UTS OpenLinux bash csh jsh rsh ksh rc tcsh
14

shell脚本和python脚本_shell脚本定义数组_shell脚本遍历数组

该实例同时打印数组“ Unix”和“ Shell”数组的元素shell脚本定义数组,并且新数组的元素数为14个。

14.删除整个数组

    暂无相关资讯
shell脚本定义数组 Bash Shell脚本中的数组使用实例