shell学习之路:流程控制(for)
for循环的语法:
1. for 变量 in 值1 值2 值3....
do
程序
done
例如:下列脚本会分别打印4次 分别是morning noon afternoon evening的值
#!/bin/bash
#打印时间
#Author Mrfeng for time in morning noon afternoon evening
do
echo $time
done
例如批量解压缩:
#!/bin/bash
#批量解压缩脚本
#Author: Mrf path=/opt/lamp cd $path ls *.tar.gz > ls.log
ls *.tgz >> ls.log
for i in $(cat ls.log)
do
tar zxvf $i &>>cc.log
done
rm -rf ls.log
2.for 语法二
格式:
for ((初始值;循环控制条件;变量变化))
do
程序
done
例如:
#!/bin/bash
#从1加到100 s=
for(( i=;i<=;i=i+1 ))
do
s=$(($s+$i))
done
echo "the sum of 1+2+...+100is: $s"
例如:批量添加用户
#!/bin/bash
# 批量添加用户数量的用户
# Author:Mr f (E-mail:) read -p "Please input user name:" -t name
read -p "Please input the number of users:" -t num
read -p "Please input the password of users:" -t pass
if [ ! -z "$name" -a ! -z "$num" -a ! -z "$pass" ]
then
y=$(echo $num | sed 's/[0-9]//g')
if [ -z "$y" ] ; then
for ((i=;i<=$num;i=i+))
do
/usr/sbin/useradd $name$i &>/dev/null
echo $pass | /usr/bin/passwd --stdin $n
ame$i &>/dev/null
done
fi
fi
cat /etc/passwd | grep user[-$num] | cut -d ":" -f >>userlist.log
当然我也写了一个利用 userlist.log进行批量删除的脚本方便大家做完实验后清理
#!/bin/bash
for i in $(cat ./userlist.log)
do
/usr/sbin/userdel -r $i &>>del.log
done
#cat del.log
rm -rf del.log
shell学习之路:流程控制(for)的更多相关文章
- shell学习之路:流程控制(while)
while循环: 介绍:while循环是不定循环,也称作条件循环.只要条件判断成立,循环就会一直继续执行,直到条件判断不成立,循环才会停止,这就是和for的固定循环不太一样了. while [ 条件判 ...
- shell学习之路:流程控制(if)
1.单分支if条件语句 if [ 条件判断式 ];then 程序 fi 或者 if [ 条件判断式 ] then 程序 fi 注意事项: 1.if语句使用fi结尾,和一般语言使用大括号结尾不同 2.[ ...
- lishell学习之路:流程控制(case)
流程控制case语句: 介绍:多分支case条件语句 1.case语句和if..elif..else语句一样都是多分支条件语句,不过和if多分支条件语句不同的是,case语句只能判断一种条件关系,而i ...
- GO语言的进阶之路-流程控制
GO语言的进阶之路-流程控制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制在编程语言中是最伟大的发明了,因为有了它,你可以通过很简单的流程描述来表达很复杂的逻辑.流程控制 ...
- [Shell]条件判断与流程控制:if, case, for, while, until
---------------------------------------------------------------------------------------------------- ...
- Shell入门教程:流程控制(1)命令的结束状态
在Bash Shell中,流程控制命令有2大类:“条件”.“循环”.属于“条件”的有:if.case:属于“循环”的有:for.while.until:命令 select 既属于“条件”,也属于“循环 ...
- shell echo/read/printf/流程控制章节笔记
// echo read printf 流程控制 命令 1.read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量 read hello 输入xxx echo $hell ...
- Python学习笔记 - day4 - 流程控制
Python流程控制 Python中的流程控制主要包含两部分:条件判断和循环. Python的缩进和语法 为什么要在这里说缩进和语法,是因为将要学习的条件判断和分支将会涉及到多行代码,在java.c等 ...
- Shell(三)流程控制
Shell 流程控制 和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { ...
随机推荐
- leetcode 235. Lowest Common Ancestor of a Binary Search Tree
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BS ...
- 安装vmall5:从ebak恢复数据,需要配置php.ini
上传vmall5源码到服务器后访问ebak目录,发现网页不显示.用xshell登录到服务器手动执行ebak/index.php查看输出,发现这样一个错误: PHP Parse Error: synta ...
- 控制div位于最上层
前提: 设置了position属性,且为relative,absolute或是fixed: 设置z-index,数值越大,越上,-1为最底层,99999为最顶层
- Python3导入cookielib失败
Python 3 改成 http.cookiejar了,所以只要改成import http.cookiejar就自动导入cookiejar了,如果还是不行,就把所有的.pyc删掉试试.
- AngularJs angular.identity和angular.noop
angular.identity 函数返回本身的第一个参数.这个函数一般用于函数风格. 格式:angular.identity() 使用代码: (function () { angular.modul ...
- POJ 2528 Mayor's posters(线段树/区间更新 离散化)
题目链接: 传送门 Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Description The citizens of By ...
- HDU 3466 Proud Merchants(01背包问题)
题目链接: 传送门 Proud Merchants Time Limit: 1000MS Memory Limit: 65536K Description Recently, iSea wen ...
- [Android]Unit Test for Android
根据Android Developer文档,对Android的UT做个学习总结: 1. 搭建Eclipse测试环境. Eclipse的ADT(Android Developer Tools) 插件为我 ...
- 利用jar命令打包和解压
常常在网上看到有人询问:如何把 java 程序编译成 .exe 文件.通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了:而另一种是使用 JET 来进行 ...
- tcpdump抓包命令
本文转自 : http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html http://www.itshouce.com.cn/l ...