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

相关推荐

  • 日常——sed练习

    1、删除centos7系统/etc/grub2.cfg文件中所有以空白开头的行行首的空白字符# sed -i.bak ‘s/^[[:space:]]*//’ /data/grub2.cfg2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符# sed -i.bak ‘s@^#[[:…

    2018-04-13
  • 软raid5制作

     一、准备工作 (1)VMware虚拟机 (2)centos6.9系统 二、在centos6.9关机状态下增加3块硬盘做RAID5,其中一块当校验盘。 三、用远程终端可以清楚的显示新增加的硬盘,将新增加的硬盘进行分区   四、开始制作 mdadm -C /dev/md0 -a yes -l 5 -c 32 -n 2 -x1 /dev/sd{b1,c…

    2018-04-29
  • shell回顾

    测试基础知识

    2018-05-17
  • RHEL7.2搭建yum源

    我在RHEL7.2搭建本地yum时发现突然报错了。 查看了一下报错信息显示 加载插件:langpacks,产品ID,搜索禁用回购,订阅管理器该系统未注册到红帽订阅管。你可以使用subscription-m急于注册.repolist:0由于Redhat的yum在线更新是收费的,如果没有注册的话是不能使用的,即不能在线安装软件。 我只好用CentOS的yum来替…

    2018-04-19
  • 命令行展开案例

    [Azuth@azuth ~]$ mkdir /home/Azuth/tmp/{a,b}_{c,d}[Azuth@azuth ~]$ ll /home/Azuth/tmp/total 0drwxrwxr-x. 2 Azuth Azuth 6 May 20 20:35 a_cdrwxrwxr-x. 2 Azuth Azuth 6 May 20 20:35 a_…

    Linux笔记 2018-05-20