运维开发网

2020-10-11学习笔记

运维开发网 https://www.qedev.com 2020-10-12 12:18 出处:51CTO 作者:qq584fe69944976
shell脚本格式脚本声明#!/bin/bash脚本注释#脚本命令echo"hello"系统中可用的shellcat/etc/shells执行可以chmod+xtest.sh或者bashtest.shshell脚本第一步是接受,第二步是判断接受用户输入的参数:shell内部已经内设了接收参数的变量,变量之间用空格隔开,$0表示当前shell脚本的名称$#表示总共有几个参数$*对
  1. shell脚本格式

    脚本声明 #!/bin/bash

    脚本注释#

    脚本命令 echo "hello"

  2. 系统中可用的shell cat /etc/shells
  3. 执行可以chmod +x test.sh 或者 bash test.sh
  4. shell脚本第一步是接受,第二步是判断
  5. 接受用户输入的参数:shell内部已经内设了接收参数的变量,变量之间用空格隔开,

    $0 表示当前shell脚本的名称

    $# 表示总共有几个参数

    $* 对应所有位置的参数值

    $? 对应上一次命令执行返回值(为0则执行成功,其他则执行失败)

    $1 , $2 ,$3 ……对应第N个位置的参数值

  6. 判断用户的参数 [ 条件表达式 ] #注意两边都有空格

    6.1 文件测试参数

    -d 测试文件是否为目录类型

    -e 测试文件是否存在

    -f 判断是否为一般文件

    -r 测试当前用户是否有权限读取

    -w 测试当前用户是否有权限写入

    -x 测试当前用户是否有权限执行

    6.2 逻辑语句符号

    && 逻辑与

    || 逻辑或

    ! 逻辑非 [ !USER=root ] #当前账户不是root

    6.3 整数比较运算符号;

    -eq 是否等于

    -ne 是否不等于

    -gt 是否大于

    -lt 是否小于

    -le 是否等于或者小于

    -ge 是否等于或者大于

    [ 10 -gt 9 ] 10大于9

    6.4 字符串比较运算符

    = 比较字符串内容是否相同

    != 比较字符串内容是否不同

    -z 判断字符串内容是否为空 # [ -z $HAHA ] 使用变量前可以测试是否有人已经用了这个变量名称

  7. 流程控制语句

    7.1 if语句

    ping -c 8 -i 0.1 -W 10 $1 &> /dev/null

    #ping一个地址,尝试ping8次,每次间隔0.1秒,等待超时10秒($1表示第一个参数,其实就是ip地址),不管是否成功输出都写入/dev/null

    if [ $? -eq 0 ]

    echo "host is online"

    then

    else

    echo "host is offline"

    fi

    if (单/双/多)

    then

    elif

    then

    else

    fi

    7.2 for条件循环语句(考试)

    touch user.txt #文件中写入几个用户名称

    zhangsan

    lisi

    wangwu

    zhaoliu

    vim user.sh

    #!/bin/bash

    #useradd

    for UNAME in cat user.txt #设置UNAME为user.txt中的用户名称

    do

    id $UNAME &> /dev/null

    if [ $? -eq 0 ]

    then

    echo " user is already exists "

    else

    then

    useradd $UNAME &> /dev/null

    echo " $PASSWD " | passwd --stdin $UNAME &> /dev/null

    fi

    done

    7.3 while条件循环语句

    while 条件测试操作

    do 命令

    done

7.4 case条件测试语句

case 变量值in

模式1)

命令序列1

;;

模式2)

命令序列2

……

esac

2020-10-11学习笔记

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号