shell编程-1到100的求和与冒泡排序
Shell编程
一. for循环
- 生成列表 {起始数..结束数}
- 命令生成列表 `seq [起始数] [步进长度] 结束数 `
for l in {1..5};do
for l in `seq 5`;do
求1到100的累加和
1 #!/bin/bash 2 declare -i SUM=0 3 4 for l in {1..100};do 5 SUM=$[$SUM+$i] 6 done 7 8 echo "$SUM"
二. 数组
//数组变量定义
$ arr={1,2,3,4,5,6}
//默认获取第一个元素
$echo $arr
//通过下标访问,下面取的数组第二个元素,下标从0开始
$echo ${arr[1]}
//访问整个数组
$echo ${arr[@]} 或者 echo ${arr[*]}
//获取数组的长度
$echo {#arr[@]}
//切片方式获取一部分数组
$echo ${arr[@]:1:2}
冒泡排序的实现
1 #!/bin/bash 2 3 echo "please input a number list:" 4 read -a arr 5 6 for ((i=0;i<${#arr[@]};i++)); 7 do 8 for ((j=${#arr[@]}-1;j>i;j--)); 9 do 10 if [[ ${arr[j]} -lt ${arr[j-1]} ]] 11 then 12 t=${arr[j]} 13 arr[j]=${arr[j-1]} 14 arr[j-1]=$t 15 fi 16 done 17 done 18 19 echo "after sorting:" 20 echo ${arr[@]}