for循环“池理解”
[root@localhost ~]# vi showday.sh
#!/bin/bash
for TM in "Morning" "Noon" "Evening"
do
echo "The $TM of the day."
done

删除指定的软件
#!/bin/bash
#
read -p "Please enter your sofeware: " SOFT
SFDIR=`rpm -qa | grep $SOFT`
for A in $SFDIR
do
read -p "Do you want Delete $A ?(yes/no) " ACK
if [ $ACK = "yes" ]
then
rpm -e --nodeps $A
echo "-----Delete $A Success------"
fi
done

–对于使用“/bin/bash”作为登录Shell的系统用户,检查他们在“/opt”目录中拥有的子目录或文件数量,如果超过100个,则列出具
体个数及对应的用户帐号

#!/bin/bash
DIR="/opt"
LMT=100
ValidUsers=`grep "/bin/bash" /etc/passwd | cut -d ":" -f 1`
forUserName in $ValidUsers
do
Num=`find $DIR -user $UserName | wc -l`
if [ $Num -gt $LMT ] ; then
echo "$UserName have $Num files."
fi
done

-------------------------------------------------------------------------
删除20个用户
#!/bin/bash
i=1
while [ $i -le 20 ]
do
userdel -r stu$i
i=`expr $i + 1`
done

-------------------------------------------------------------------------
创建30个用户并且加入class组
#!/bin/bash
i=1
groupadd class
while [ $i -le 30 ]
do
if [ $i -le 9 ] ;then
USERNAME=stu0${i}
else
USERNAME=stu${i}
fi
useradd $USERNAME
usermod -G class $USERNAME
i=$(($i+1))
done
-------------------------------------------------------------------------
–编写脚本文件 mydb.sh,用于控制系统服务mysqld
–当执行 ./mydb.sh start 时,启动mysqld服务
–当执行 ./mydb.sh stop 时,关闭mysqld服务
–如果输入其他脚本参数,则显示帮助信息

#!/bin/bash
case $1 in
start)
echo "Start MySQL service."
;;
stop)
echo "Stop MySQL service."
;;
*)
echo "Usage:$0 start|stop"
;;
esac
–提示用户从键盘输入一个字符,判断该字符是否为字母、数字或者其它字符,并输出相应的提示信息

#!/bin/bash
read -p "Press some key, then press Return:“ KEY
case "$KEY“ in
[a-z]|[A-Z])
echo "It's a letter."
;;
[0-9])
echo "It's a digit."
;;
*)
echo "It's function keys、Spacebar or other keys. "
esac
-------------------------------------------------------------------------
增加:
–在脚本中定义一个加法函数,用于计算2个整数的和
–调用该函数计算(12+34)、(56+789)的和

#!/bin/bash
adder() {
echo `expr $1 + $2`
}
adder 12 34
adder 56 789

跟踪用户命令输入,判断命令使用是否正确
get_ps1()
{
if [ "$?" = "0" ]
then
#we're on the system console or maybe telnetting in
export PS1="[^_^] \W\\$ "
else
#we're not on the console, assume an xterm
export PS1="[T_T] \W\\$ "
fi
}
PROMPT_COMMAND=get_ps1
-------------------------------------------------------------------------
增加
//break是结束整个循环体,continue是结束单次循环
比方说:
#!/bin/bash
# test break
i=1
while [ $i -lt 10 ]
do
if [ $i = 5 ]
then
i=`expr $i + 1`
break;
fi
echo $i
i=`expr $i + 1`
done
结果是输出 1 2 3 4 就退出了整个while循环
但是如果使用continue
#!/bin/bash
# test break
i=1
while [ $i -lt 10 ]
do
if [ $i = 5 ]
then
i=`expr $i + 1`
continue;
fi
echo $i
i=`expr $i + 1`
done
结果是:1 2 3 4 6 7 8 9 10 可见他仅仅是不输出5,因为他结束了本次循环

for循环实例的更多相关文章

  1. python3.4学习笔记(十) 常用操作符,条件分支和循环实例

    python3.4学习笔记(十) 常用操作符,条件分支和循环实例 #Pyhon常用操作符 c = d = 10 d /= 8 #3.x真正的除法 print(d) #1.25 c //= 8 #用两个 ...

  2. python3速查参考- python基础 3 -> -> while循环实例 + Continue && break的应用 + 列表的初步学习

    while语句的应用 实例如下: """ 述求:用户登录系统,最多只能登录三次 第三次失败后,程序终止 """ user_table = { ...

  3. JavaScript循环实例

    几个经典的循环案例: 1.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米 var i=0; var h=0.0001; while(true){ i++; h=h*2; ...

  4. 【JavaScript for循环实例】

    1.大马驮2石粮食,中马驮1石粮食,两头小马驮一石粮食,要用100匹马,驮100石粮食,该如何调配? //驮100石粮食,大马需要50匹 for(var a=0;a<=50;a++){ //驮1 ...

  5. php do while循环实例

    do-while循环和while循环非常相似,其区别只是在于do-while保证必须执行一次,而while在表达式不成立时则可能不做任何操作. do-while 循环只有一种语法: do { stat ...

  6. Windowns DOS For 循环实例

    update_all.bat代码示例: @echo off echo ***************************************************************** ...

  7. Python基本循环实例Day 1

    输入正确的用户名和密码,显示登陆界面,超过三次输入错误则锁定,定义字符串记得加上单引号,数字可以int定义,while循环和if循环语句后加上:,break不加: print("------ ...

  8. while 循环 实例

    /*int i=0; while(i<100){// 循环条件 while先执行后循环 printf("while第%d遍循环体\n",i);//循环体 i++; } */ ...

  9. for循环实例2

    九九乘法表: //九九乘法表 ; x < ; x++) { ; y <=x;y++ ) { Console.Write(y.ToString()+"*"+x.ToStr ...

随机推荐

  1. [Oracle]如何在Oracle中设置Event

    为了调查Oracle 的故障,可以通过设置event ,来了解详细的状况.方法如下: ■ 如果使用 SPFILE, =============To enable it: 1. Check the cu ...

  2. [Oracle]跨DBLINK的JOIN查询的数据库缓存问题15783452141

    客户问到跨DBLINK,结合本地表和远端表的时候,数据在哪一边 的 Data Buffer 缓存. 测试的结果是:本地表在本地缓存,远端表在远端缓存. ####Testcase-0929-10 本地数 ...

  3. jinja2模块使用教程

    模板 要了解jinja2,那么需要先理解模板的概念.模板在Python的web开发中广泛使用,它能够有效的将业务逻辑和页面逻辑分开,使代码可读性增强.并且更加容易理解和维护. 模板简单来说就是一个其中 ...

  4. 扩展ASP.NET Identity使用Int做主键

    当我们默认新建一个ASP.NET MVC项目的时候,使用的身份认证系统是ASP.NET Identity.但是这里的Identity使用的主键为String类型的GUID.当然这是大多数系统首先类型. ...

  5. 值类型和引用类型的区别,struct和class的区别

    C#值类型和引用类型 1.简单比较 值类型的变量直接存储数据,而引用类型的变量持有的是数据的引用,数据存储在数据堆中. 值类型(value type):byte,short,int,long,floa ...

  6. EF_DataFrist遇到的问题

    正在 Code First 模式下将此上下文与从 EDMX 文件生成的用于 Database First 或 Model First 开发的代码一起使用.这将无法正常工作.若要解决此问题,请不要删除引 ...

  7. json模块 & pickle模块

    之前学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所 ...

  8. Caffe2的安装

    源码下载 首先下载caffe2的源码:https://github.com/caffe2/caffe2 网上都建议使用git命令下载,因为caffe2依赖了很多第三方模块,git会根据依赖自动下载第三 ...

  9. jsp的自定义标签

    1.相对于JSTL或Spring等第三方标签库而言的,用来实现项目中特定的功能需求. 2.自定义标签基本的组成部分 ①页面上看得见的部分 [1]通过taglib引入标签库 [2]标签本身 ②xxx.t ...

  10. TCP程序设计基础

    1.端口与套接字 IP地址--->端口--->套接字(Socket)--->应用程序 2.TCP服务器端和客户端通信 1)服务器创建一个ServerSocket,调用accept() ...