####################
#功能说明:判断系统中的用户类别,并统计结果
#功能扩展:批量给普通用户发邮件,删除某些用户等

####################

#!/bin/sh
a=0
b=0
for NAME in $(getent passwd | awk -F: '{ print $1 }')
do
 getent passwd | grep "^${NAME}:" > /tmp/name_list.tmp
 NAME_ID=$(awk -F: '{ print $3 }' /tmp/name_list.tmp)
 echo "==============================="
 echo "Username: $NAME"
 echo "UserID: $NAME_ID"
 if [ ${NAME_ID} -ge 500 ]
 then
  echo "UserType: 普通用户"
  a=`expr $a + 1`
 else
  echo "UserType: 系统用户"
  b=`expr $b + 1`
 fi
 echo "OK"
done
 echo "==============================="
 echo "          用户统计: "
 echo "系统用户: $b个"
 echo "普通用户: $a个"
 rm -f /tmp/name_list.tmp

转载于:https://blog.51cto.com/lovesea/88521

一个简单的shell实例相关推荐

  1. Java Tread多线程(0)一个简单的多线程实例

    作者 : 卿笃军 原文地址:http://blog.csdn.net/qingdujun/article/details/39341887 本文演示,一个简单的多线程实例,并简单分析一下线程. 编程多 ...

  2. 递归算法(python),汉诺塔问题,斐波那契数列,一个简单的递归实例,用递归实现阶乘,用递归查看目录及文件

    https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行! 如有转载,请 ...

  3. Qt5.9一个简单的多线程实例(类QThread)(第一种方法)

    Qt开启多线程,主要用到类QThread.有两种方法,第一种用一个类继承QThread,然后重新改写虚函数run().当要开启新线程时,只需要实例该类,然后调用函数start(),就可以开启一条多线程 ...

  4. jsonrpc php使用,php实现的一个简单jsonrpc框架实例

    php实现的一个简单jsonrpc框架实例json rpc 是一种以json为消息格式的远程调用服务,它是一套允许运行在不同操作系统.不同环境的程序实现基于Internet过程调用的规范和一系列的实现 ...

  5. 35 行代码实现一个简单的 shell

    先上代码 shell.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include & ...

  6. 《ANSYS Workbench 14有限元分析自学手册》——1.7 一个简单的分析实例

    本节书摘来自异步社区<ANSYS Workbench 14有限元分析自学手册>一书中的第1章,第1.7节,作者: 吕建国 , 康士廷 更多章节内容可以访问云栖社区"异步社区&qu ...

  7. 一个简单的SHELL脚本模板

    一个简单的SHELL脚本模板,适用于Java项目的启动,停止,重启. 如果在windows上编辑,请使用Notepad++ 设置编码格式为UTF-8无BOM编码,脚本的文档格式为UNIX格式,否则会因 ...

  8. 一个简单的HTML实例

    一个简单的HTML实例 适合新手的一个简单的HTML实例 <!DOCTYPE html> <html lang="zh"> <head>< ...

  9. 函数式编程中的战斗机(二) --运用elm语言MUV设计模式做一个简单的应用实例

    @函数式编程中的战斗机(二) -运用elm语言MUV设计模式做一个简单的应用实例 1 elm语言设计模式的特点 1.1 面向对象设计模式的特点 每种编程语言都有其独特的语法和优缺点,从而导致与众不同的 ...

最新文章

  1. 分布式缓存系统Memcached简介与实践(.NET memcached client library)
  2. 数字图像处理特效中彩色墨水效果的设计与实现
  3. cd返回上一 git_使用Git实现自动化部署项目
  4. java的值排序总结
  5. Sklearn-RandomForest
  6. 特征图注意力_CV注意力机制论文阅读笔记
  7. colorkey唇釉是否安全_colorkey小黑镜唇釉好用吗
  8. 万稞pw80线切割编程软件_线切割的老司机们,你们知道绘图编程软件AUTOP是怎么来的吗?...
  9. 电脑程序上的计算机在哪里打开,电脑超级终端在哪里?电脑打开超级终端的方法...
  10. 有管网气体消防系统小知识来啦
  11. 降低网站跳出率9种方法
  12. Assuming drive cache: write through ubuntu硬盘内存扩展
  13. cadence如何导入gds_如何利用Allegro SiP Layout 5步实现复杂引线框架封装设计?
  14. Spring定时任务(计划任务)
  15. 经常生气的人,身体有什么变化?
  16. 高版本IAR打开低版本编译的程序出现的问题
  17. 虚拟机增加磁盘空间后lv扩容详细流程,linux扩容根目录详细流程【openstack和VMware虚拟机方法同理】,centos重装系统lvm后不可用处理流程,2021尾声祝福送上。
  18. 还在埋头苦干?会构建个人品牌的人已在弯道超车
  19. 美洽消息推送 php,GitHub - Meiqia/MeiqiaSDK-Push-Signature-Example: 美洽 SDK 3.0 推送的数据结构签名算法,多语言示例。...
  20. 怎么把照片做成动态的?如何让照片动起来?

热门文章

  1. element-ui table点击某行,修改背景颜色(即高亮)
  2. css选择器 pa,p~a,p+a区别
  3. mysql 多表查询练习题_mysql多表查询练习
  4. 递归删除单链表中所有值为x的元素_如何纯递归反转链表的一部分
  5. 机器学习系列(2)_从初等数学视角解读逻辑回归
  6. 各种编程语言的深度学习库整理(中英版)
  7. Java中用ClassLoader载入各种资源(类、文件、web资源)的方法
  8. 自己动手实现的 Spring IOC 和 AOP - 上篇
  9. Java Servlet 技术简介
  10. 关于Java中try-catch-finally-return的执行顺序