8.2磁盘2

简介:

echo -n 不换行输出

#!/bin/bash

#

declare -i MAX=0

declare -i MIN=0

for I in {1..10};do

  MYRAND=$RAMDOM

  [ $I -eq 1 ] && MIN=$MYRAND

  if [ $I -le 9 ];then

    echo -n "$MYRAND,"

  else

    echo "$MYRAND"

  fi

  [ $MYRAND -gt $MAX ] && MAX=$MYRAND

  [ $MYRAND -lt $MIN ] && MIN=$MYRAND

done


echo $MAX

echo $MAX


面向过程:

    控制结构

         顺序结构

         选择结构

         循环结构


选择结构:

if:单分支 双分支 多分支

if CONDITION;then

   statement

   ...

fi


if CONDITION;then

   statement

   ...

else

   statement

   ...

fi


if   CONDITION;then

   statement

elif CONDITION;then

   statement

else CONDITION;then

   statement

fi


case 语句;选择结构

     变量的值

case SWITCH in

value1)

   statement

   ...

   ;;

value2)

   statement

   ...

   ;;

*)

   statement

   ...

   ;;

esac


#!/bin/bash

#

case $1 in

[0-9])

   echo "A digit" ;;

[a-z])

   echo "Lower" ;;

[A-z])

   echo "Upper" ;;

*)

   echo "Spacial character." ;;

esac


接受参数,start stop restart status其中之一

#!/bin/bash

#

case $1 in

'start')

  echo "start server ..." ;;

'stop')

  echo "stop server ..." ;;

'restart')

  echo "Restart server ..." ;;

'status')

  echo "running ..." ;;

*)

  echo "basename $0 {start|restart|status|stop}" ;;

esac


写一个脚本,可以接收选项及参数,而后获取每一个选项,及选项的参数;

  并能根据选项及参数做出特点的操作,比如

adminusers.sh --add tom,jerry 

              --del tom,blair 

              -v|--verbose 

              -h|--help

vi debug.sh

#!/bin/bash

#

DEBUG=0

case $1 in

-v|--verbose)

   DEBUG=1 ;;

*)

  echo "Unkown options"

  exit 7

  ;;

esac


[ $DEBUG -eq 1 ] && echo hello


vi adduser.sh

#!/bin/bash

#

DEBUG=0

ADD=0

DEL=0

case $1 in

-v|--verbose)

   DEBUG=1 ;;

esac


useradd tom &> /dev/null

[ $DEBUG -eq 1 ] && echo "Add user finished"


vim adminusers.sh

#!/bin/bash

#

DEBUG=0

ADD=0

DEL=0


for I in `seq 1 $#`;do

case $1 in

-v|--verbose)

  DEBUG=1 

  shift $1 ;;

-h|--help)

  echo "Usage:`bashname $0` --add USER_LIST --del USER_LIST -v|        verbose -h|--help "

  exit 0  ;;

--add)

  ADD=1

  ADDUSERS=$2

  shift 2 ;;

--del)

  DEL=1

  DELUSERS=$2

  shift 2 ;;

#*)

#  echo "Usage:`bashname $0` --add USER_LIST --del USER_LIST -v|      #  verbose -h|--help "

#  exit 7  ;;

esac

done


if [ $ADD -eq 1 ];then

  for USERS in `echo $ADDUSERS | sed 's@,@ @g'` ;do

    if id $USER &> /dev/null;then

       [ $DEBUG -eq 1 ] && echo "$USER  exist."

    else

      useradd $USER

      [ $USER -eq 1 ] && echo "$USER finished"

    fi

  done

fi


if [ $DEL -eq 1 ];then

  for USERS in `echo $DELUSERS | sed 's@,@ @g'` ;do

    if id $USER &> /dev/null;then

       usedell -r  $USER;

       [ $DEBUG -eq 1 ] && echo "Delete $USER finished."

    else

       [ $USER -eq 1 ] && echo "$USER not exist"

    fi

  done

fi






















     

































































本文转自飞行萌51CTO博客,原文链接: http://blog.51cto.com/8527508/1942799,如需转载请自行联系原作者




相关文章
|
7月前
|
IDE Linux 开发工具
磁盘
磁盘
131 0
|
2月前
|
存储 缓存 监控
磁盘I/O
【10月更文挑战第4天】磁盘I/O
45 2
|
17天前
|
存储 IDE 开发工具
磁盘的物理组成
本文介绍了磁盘的物理组成和如何新增磁盘。磁盘主要由主轴、磁盘盘、磁头和磁头臂组成,其中磁道、簇、扇面和扇区是磁盘的基本存储单元。新增磁盘的步骤包括关闭操作系统、选择磁盘类型和容量、创建新虚拟磁盘并完成配置。常见的磁盘接口类型有IDE、SCSI、SATA和SAS。
31 0
|
5月前
|
存储 缓存 算法
磁盘I/O操作
【7月更文挑战第12天】磁盘I/O操作
55 1
|
存储 IDE Linux
|
缓存 监控 算法
|
存储 小程序 虚拟化
|
存储 固态存储 索引
磁盘文件系统一
磁盘文件系统一
磁盘文件系统一
|
存储 Linux 索引
磁盘文件系统二
磁盘文件系统二
磁盘文件系统二
|
存储 安全 Linux
磁盘文件系统三
磁盘文件系统三
磁盘文件系统三