• Shell 常见语法


    执行Shell

    1. 输入完整脚本文件路径即可执行。
      提示:权限不够,则执行chmod u+x 文件名
    2. 执行bash shell文件名称

    简单的脚本

    #!/bin/bash
    # 上面的是指定解释器
    echo $PATH
    echo 路径输出完毕!
    echo `date +%Y%M%d`
    

    接受输入参数

    • 执行shell文件时,在文件后使用空格隔开多个输入参数。
    • shell文件中使用输入参数
    参数 说明
    $n 用户输入的第n个参数,从1开始
    $# 用户输入的擦书总数
    $* 用户输入的所有参数值,使用空格隔开

    条件测试语法

    • Shell 脚本中的条件测试语法可以判断表达式是否成立,

    若条件成立则返回数字 0,否则便返回其他随机数值。

    语法格式:

    [ 条件表达式 ]
    
    • 条件表达式两侧需要各有一个空格。
    • 使用$?返回条件表达式结果。
    • 条件表达式可以是变量也可以是具体的值。
    • &&表示当前面的命令执行成功后才会执行它后面的命令。
    • ||表示当前面的命令执行失败后才会执行它后面的命令。
    • !示把条件测试中的判断结果取相反值。

    测试运算符

    运算符 说明
    -d 测试文件是否为目录类型
    -e 测试文件是否存在
    -f 判断是否为一般文件
    -r 测试当前用户是否有权限读取
    -w 测试当前用户是否有权限写入
    -x 测试当前用户是否有权限执行
    -eq 两个数字是否等于
    -ne 两个数字是否不等于
    -gt 数字A是否大于数字B
    -lt 数字A是否小于数字B
    -le 数字A是否等于或小于数字B
    -ge 数字A是否大于或等于数字B
    = 比较字符串内容是否相同
    != 比较字符串内容是否不同
    -z 判断字符串内容是否为空

    实例:

    [ 1 -eq 2 ] || echo '这个说法是对的'
    

    流程控制语句

    if语句

    语法:

    if 条件测试语句 then
      命令...
    fi
    

    if-else语句

    语法:

    if 条件测试语句 then
      命令...
    else
      命令...
    fi
    

    case语句

    语法:

    case 变量值 in
    值1)
      命令..
      ;;
    值2)
      命令..
      ;;
    
      ...
    
    *)
      默认的命令..
      ;;
    esac
    
    • *代表不在所列出范围内的值。
    • 匹配值可以有多个。

    条件循环语句

    for循环

    语法:

    for 变量名 in 取值列表
    do
      命令...
    done
    
    • 取值列表可以是命令查出来的值。
    • 循环体内可以使用$变量名的形式获取当前变量的值。

    while循环

    语法:

    while 条件测试语句
    do
      命令...
    done
    
  • 相关阅读:
    Webservice详解
    Spring IOC/DI和AOP原理
    MySQL 使用JOIN优化子查询
    MySQL 更新语句技巧
    MySQL插入语句解析
    MySQL用户无法登陆问题
    MySQL基础学习(二) 常用SQL命令
    Servlet/JSP-08 EL表达式
    插值和空间分析(一)_探索性数据分析(R语言)
    爱重启的windows,伤不起
  • 原文地址:https://www.cnblogs.com/devzyh/p/13373131.html
Copyright © 2020-2023  润新知