Shell列表操作

字符串列表定义方法

已空格分割

a=(1 2 3 4)

输出列表所有元素

echo ${a[*]}

输出列表下标

echo ${!a[*]}

通过下标输出元素

下标已0开始

# echo ${a[0]}

输出列表长度

echo ${#a[*]}

列表循环

for i in ${a[*]}
    do
        echo $i
    done

列表追加

a=(1 2 3 4)
a+=(5)
echo ${a[*]}
1 2 3 4 5

列表元素删除

a=(1 2 3 4)
a=(${a[*]/1})
echo ${a[*]}
2 3 4

使用列表实现数值排序

# 冒泡算法
a=(1 3 4 5 0 78 9 7 4)
# 获取列表长度
len=${#a[@]}
echo $len
for((i=0;i<$len;i++)){
    for((j=i+1;j<$len;j++)){
        if [ ${a[i]} -gt ${a[j]} ];then
            temp=${a[i]}
            a[i]=${a[j]}
            a[j]=$temp
        fi
    }
}
echo ${a[*]}

冒泡算法从第一个数字开始循环,和第二个数字进行对比如果后一位数字则对调,双重循环后得到排序

注意shell列表的取值方式 $

posted @   minseo  阅读(1036)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2018-04-28 MySQL主从同步配置
点击右上角即可分享
微信分享提示