shell 编程案例整理

来源:互联网 发布:mac迅雷无法连接网络 编辑:程序博客网 时间:2024/06/05 04:02
一、统计成绩文件

[zheng@localhost ~]$ cat score.txt ngsan    80lisi    81.5wangwu    93zhangsan    85lisi    88wangwu    97zhangsan    90lisi    92wangwu    88wangwu    99

统计

[zheng@localhost ~]$ awk 'BEGIN{print "name average total"}{a[$1]+=$2;b[$1]++};END{for(i in a)print i "\t"a[i]/b[i]"\t"a[i]}' score.txt | column -tname      average  totalzhangsan  87.5     175wangwu    94.25    377ngsan     80       80lisi      87.1667  261.5

 二、求100以内的质数

#!/bin/bash# 求100以内的质数#declare -i i=1i=1while (( i<=100 ))do    ret=1    for ((j=2;j<i;j++))    do        # if (( i%j == 0));then        if [ $(( i%j )) -eq 0 ];then            ret=0            break        fi    done    if [ $ret -eq 1 ];then        echo "$i"    fi    # 以下六种运算方式都可以使用    # (( i=i+1 ))     i=$[i+1]    # i=$((i+1))
  # let i=i+1
  # let i++
  # i=`expr $i + 1` # 下面这行中的i需要declare为int #i=$i+1done

 for 循环

#!/bin/bashfor ((i=1;i<100;i++))do    ret=1    for ((j=2;j<i;j++))    do        if (( i%j == 0 ));then            ret=0            break        fi        done    if ((ret==1));then        echo $i    fidone

 三、生成32位随机字符

cat /proc/sys/kernel/random/uuid | tr -d '-'
2346e35abbf1421e9ad25ce1996f26df

原创粉丝点击