为了账号安全,请及时绑定邮箱和手机立即绑定
  • 字符串的判断
    查看全部
  • 两个文件之间进行比较条件
    查看全部
  • 按照文件权限进行判断
    查看全部
  • 按文件类型进行判断
    查看全部
  • 按照文件类型进行判断
    查看全部
  • 批量添加用户
    查看全部
  • 例6.判断用户输入的是什么文件 #!/bin/bash #判断用户输入的是什么文件 read -p "Please input a filename: " file #接收键盘的输入,并赋予变量file if [ -z "$file" ] #判断file变量是否为空 then echo "错误,请输入一个文件名!" exit 1 elif [ ! -e "$file" ] #判断file的值是否存在 then echo "您输入的不是一个文件名!" exit 2 elif [ -f "$file" ] then echo "$file 是一个普通文件。" elif [ -d "$file" ] then echo "$file 是一个目录文件。" else echo "$file 是一个其他文件(硬链接等)。" fi 4.多分支case语句 语法: case $变量 in "值") 程序1 ;; "值") 程序2 ;; *) 程序3 ;; 例7.判断用户输入 #!/bin/bash read -p "Please input yes/no: " -t 30 choose case $choose in "yes") echo "Your choose is yes." ;; "no") echo "Your choose is no." ;; *) echo "Your choose is error, please choose yes or no." ;; esac 5.for语句 for 变量 in 值1 值2 值3... do 程序 done 例8. #!/bin/bash #批量解压缩文件 cd /root/test/ ls *.tar.gz > ls.log #将所有.tar.gz 结尾的文件名输出到ls.log文件中,并覆盖原有文件名 ls *.tgz >> ls.log #将.tgz结尾的文件追加到ls.log文件中 for i in $(cat ls.log) do tar -zxf $i &> /dev/null #将所有的输出结果都输出到/dev/null回收站中,不显示任何输出 done rm -rf ls.log
    查看全部
    0 采集 收起 来源:课程总结

    2018-03-22

  • 例9.加法运算 #!/bin/bash #从1加到100 s=0 for(( i=1;i<=100;i=i+1 )) #注意,运算需要加到()中,而且shell中没有++,--这种写法 do s=$(( $s+$i )) done echo " 1+2+...+100 = $s " 例10 #!/bin/bash #批量添加指定数量的用户 read -p "Please input user name: " -t 30 name read -p "Please input the number of users: " -t 30 num read -p "Please input the password of users: " -t 30 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=1;i<=$num;i=i+1 )) do /usr/sbin/useradd $name$i &>/dev/null echo $pass /usr/bin/passwd --stdin $name$i &>/dev/null #将useradd改为userdel,同时删掉添加密码这句就是删除用户 done fi fi 检验:cat /etc/passwd 普通用户跟其他用户的区别:普通用户可以登录/bin/bash,而其他用户为/sbin/nologin 提取出系统的普通用户:cat /etc/passwd grep /bin/bash grep -v root cut -d ":" -f1
    查看全部
    0 采集 收起 来源:课程总结

    2018-03-22

  • 例11.删除系统中的普通用户 #!/bin/bash for i in $(cat /etc/passwd grep /bin/bash grep -v root cut -d ":" -f1) do userdel -r $i done 6.while循环和until循环 while循环 --> 条件成立才循环,条件不成立即停止循环 例12. #!/bin/bash i=1 s=0 while [ $i -le 100 ] do s=$(( $s+$i )) i=$(( $i+1 )) done echo $s until循环和while循环相反,until为条件不成立时候循环并执行程序,一旦循环条件成立,则终止循环 上式换为until即为: #!/bin/bash i=1 s=0 until [ $i -gt 100 ] #循环直到变量i大于100,就停止循环 do s=$(( $s+$i )) i=$(( $i+1 )) done echo "The sum is: $s." 其他shell脚本: vi /etc/rc.d/init.d/httpd
    查看全部
    0 采集 收起 来源:课程总结

    2018-03-22

  • until
    查看全部
  • while
    查看全部
  • 2、批量删除非ROOT用户
    查看全部
  • 1、批量添加指定数量的用户
    查看全部
  • 源代码(批量解压缩包)<br> <br> #!/bin/bash cd /root/test ls *.tar.gz > ls.log(>覆盖) ls *.tgz >> ls.log(>>添加) for i in $(cat ls.log) do tar -zxvf $i & > /dev/null done rm -rf ls.log
    查看全部
    1 采集 收起 来源:for循环

    2018-03-22

  • #!/bin/bash read -t 30 -p "Please input yes/no:" cho case "$cho" in "yes") echo "You input yes!" ;; "no") echo "You input no!" ;; *) echo "Please input yes/no!" ;; esac
    查看全部

举报

0/150
提交
取消
课程须知
小伙伴们,学习本课程前需要掌握Linux常用命令,并学习《Tony老师聊shell》系列的前四门课程呦!
老师告诉你能学到什么?
1、掌握条件判断和流程控制的基本语句 2、通过大量案例的学习,掌握shell编程思想 3、体会shell编程在Linux运维中的重要作用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!