zoukankan      html  css  js  c++  java
  • 关联数组——统计文件/etc/passwd中用户使用的不同类型shell的数量

    一、脚本编写

    #!/bin/bash
    #****************************************************
    #Date:        2020-06-25
    #Author:      Damon Ye
    #FileName:   countshell.sh
    #Description:The test script
    #****************************************************
    declare -A  ArrayForShell
    while read EachLine                      done后面接<将文件重定向给while;while后再接read将文件流赋值给变量
      do
          ArrayIndex=`echo $EachLine | awk -F: '{print $7}'`               awk会以逐行的形式处理本舰。
          let ArrayForShell[$ArrayIndex]++            当使用let时,变量前面不必加上$                                                                                                                                              
      done < /etc/passwd
    echo "######${!ArrayForShell[@]}######"  数组索引
    echo "######${#ArrayForShell[@]}######"  数组元素的个数
    echo "######${ArrayForShell[@]}######"   数组元素
    for i in ${!ArrayForShell[@]}                数组索引的个数 == for循环执行的次数,这就是关联数组的遍历do                                                                                                                                                                             
        echo "$i ::::: ${ArrayForShell[$i]}"                                                        
      done

    二、执行结果

    [root@localhost package]# bash countshell.sh 
    ######/sbin/nologin /bin/sync /bin/bash /sbin/shutdown /sbin/halt######
    ######5######
    ######37 1 2 1 1######
    /sbin/nologin ::::: 37
    /bin/sync ::::: 1
    /bin/bash ::::: 2
    /sbin/shutdown ::::: 1
    /sbin/halt ::::: 1

    https://blog.csdn.net/a54925171/article/details/102275447

  • 相关阅读:
    C# FTP操作
    SWUST OJ(963)
    插入排序(折半插入排序)
    SWUST OJ(962)
    SWUST OJ(961)
    SWUST OJ(960)
    SWUST OJ(957)
    SWUST OJ(956)
    SWUST OJ(955)
    SWUST OJ(954)
  • 原文地址:https://www.cnblogs.com/ytdyz/p/13191936.html
Copyright © 2011-2022 走看看