for循环语法二

  • for ((初始值;循环控制条件;变量变化))
  •   do
  •     程序
  •   done

例子

例子-1 求和工具

需求:根据用户输入的数字,求1~输入所有数字的和

脚本:

  • #!/bin/bash
  • read -t 30 -p "输入终点数字:" num
  • sum=o
  • for (( i=1;i<=$num;i=i+1 ))
  •   do
  •     sum=$(( $sum+i ))
  •   done
  • echo "1+2+……$num=$sum"

例子-2 批量添加用户

前置命令:cat /etc/passwd 查看系统有多少用户

需求:测试部门增加30个用户

脚本:

  • #!/bin/bash
  • read -t 30 -p "需要添加用户的部门:" dept
  • read -t 30 -p "需要添加多少个用户:" num
  • read -t 30 -p "新增用户初始密码:" pass
  • if [ ! -z $dept -a ! -z $num -a ! -z $pass ]
  •   then
  •   #判断添加多少用户是否输入的是数字
  •   y=$(echo $num | sed 's/[0-9]//g')
  •   if [ -z $y ]
  •     then
  •     for(( i=1;i<=$num;i=i+1 ))
  •       do
  •         #添加用户
  •         /usr/sbin/useradd $dept$i &> /dev/null
  •         #密码传递给--stdin,给用户添加密码$dept$i
  •         echo $pass | /usr/bin/passwd --stdin $dept$i &> /dev/null
  •       done
  •   fi
  • fi

例子-3 批量删除用户

前置命令:cat /etc/passwd 查看系统有多少用户

需求:删除所有普通用户

脚本:

  • #!/bin/bash
  • for i in $(cat /etc/passwd | grep /bin/bash | grep -v root | grep -v "test:" | cut -d ":" -f 1)
  •   do
  •     #连同用户家目录一起删除
  •     userdel -f $i
  •   done

最新文章

  1. Nancy之给我们的网站添加自定义图标
  2. Codeforces Round #211 (Div. 2) D题(二分,贪心)解题报告
  3. 记录一下dotnetcore.1.0.0-VS2015Tools.preview2安装不上的问题
  4. .NET 使用CouchBase 基础篇
  5. winfrom的两种拖拽方式和界面阴影
  6. 使用Spring框架的12个开源项目
  7. 将GridView中的数据导出到Excel代码与注意事项
  8. 【排序】表插入排序算法(C语言版)
  9. LDA的一些资料
  10. Android Weekly Notes Issue #251
  11. 数据处理不等式:Data Processing Inequality
  12. Sharding-jdbc实现分库分表
  13. asp.net 下的中文分词检索工具 - jieba.net
  14. 5月第2周业务风控关注 | 央行:严禁未经授权认可的APP接入征信系统
  15. centos7配置consul
  16. 七月在线爬虫班学习笔记(六)——scrapy爬虫整体示例
  17. hibernate之三种时态之间的转换
  18. 图解SQL的inner join、left join、right join、full outer join、union、union all的区别【转载】
  19. with在模板中的应用
  20. LeetCode OJ:Candy(糖果问题)

热门文章

  1. k8s之数据存储-配置存储
  2. NOIP 模拟 $33\; \rm Hunter$
  3. noip 模拟 6
  4. wait notify的使用
  5. PS与CSS字间距转换
  6. docker 安装部署 jenkins
  7. Socket通信协议解析(文章摘要)
  8. wpf 的style
  9. 【转】TCP的三次握手与四次挥手理解及面试题
  10. JDBC中级篇(MYSQL)——模拟从数据库中上传下载附件