if语句、for语句练习

单分支之if语句

语法:

if测试条件1;then

arg1

else

arg2

fi

多分支if语句

 

语法:

if 测试条件1 ;then

arg1

elif 测试条件2 ;then

arg2

elif 测试条件3 ;then

arg3

else

arg4

fi

for语句

语法:

for i in 参数列表 ;do

循环体

done

参数列表:

{1..100}

`seq [起始数[步进]] 结束数`

练习

实例1、求和1到100

#!/bin/bash

let sum=0

for I in {1..100} ;do

let sum=$[ sum+I ]

done

echo “$sum

实例2 取出/etc/passwd的用户,并向每个用户说hello

#!/bin/bash

LINE=`wc -l /etc/passwd | cut -d” ” -f1`

for i in `seq 1 $LINE` ;do

echo “hello `head -n$i /etc/passwd | tail -n1 | cut -d: -f1`”

done

实例3 组合使用for,if语句。批量创建用户并设定密码

#!/bin/bash

for I in {1..10}; do

if id cxin$I &> /dev/null ;then

echo”cxin$I is ext.”

else

useradd cxin$I

echo cxin$I | passwd –stdin cxin$I &>/dev/null

echo “add cxin$I success”

fi

done

实例4 批量删除用户,先判断用户是否存在,若存在就删除并提示删除成功;若不存在,则提示用户不存在

#!/bin/bash

for I in {1..10} ;do

if id xin$I &> /dev/null ;then

echo xin$I is ext,you can del it.

userdel xin$I

echo del xin$I success

else

echo xin$I not ext

fi

done

 

实例5 根据参数add、del来确定下一步操作.如果是add,则添加用户;如果是del,则删除用户

#!/bin/bash

if [ $1 == add ] &> /dev/null ;then

for I in {1..10} ;do

useradd chenx$I

echo add chenx$I success

echo chenx$I | passwd –stdin chenx$ &> /dev/null

done

else

[ $1 == del ] &> /dev/null

for I in {1..10} ;do

userdel -r chenx$I

echo del chenx$I success

done

fi

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96227

(0)
chenxinchenxin
上一篇 2018-04-15
下一篇 2018-04-15

相关推荐

  • 如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的

    获取命令帮助     内部命令:     ~]# help COMMAND     外部命令:     (1) ~]# COMMAND –help     (2) 使用手册 manual 位于/usr/share/man         ~]# man CHAPTER COMMAND         ~]# man 5 passwd       …

    Linux笔记 2018-05-13
  • 文本处理工具

    简要介绍各种文本查看,分析和统计的工具

    Linux笔记 2018-04-06
  • 文本搜索工具

    文本搜索 locate 根据库来查找,非实时查找,只能访问有权限访问的文件或目录 依赖库/usr/lib/mlocate/molate.db 更新数据库 updatedb -i 忽略大小写 -n只列出前几个 -r支持正则 find 扫描磁盘进行查找,消耗资源大 -o 或者 -empty空文件后者目录 -not 或! ls 对匹配的文件以长格式显示 -dele…

    Linux笔记 2018-04-15
  • linux与xshell入门

    难的不行,做标记

    2018-07-29
  • systemctl命令

    systemctl

    Linux笔记 2018-04-24
  • 第二周笔记

    ### 4 月2日笔记 – #### IO重定向“`I:input指的是标准输入 描述符用0表示O:output指的是标准输入 描述符用1表示标准错误 描述符用2表示“`一般文件或者命令的标准输入是指的键盘,标准输出是值得终端窗口。我们用重定向来改变他们的方向大于号> 表示标准输出:把输出内容定向到一个文件中&#82…

    Linux笔记 2018-04-01