zoukankan      html  css  js  c++  java
  • Linux Shell 常用编程语法

    指定解释器

    #!/bin/bash
    # Sample.sh
    

    变量使用

    path=123
    path="/home"
    path=`pwd`
    

    字符串操作

    string="the path is [ $path ]"
    echo "取值:${string}"
    echo "长度:${#string}"
    echo "截取前3字节:${string:0:3}"
    echo "截取3字节后:${string:3}"
    echo "截取后3字节:${string:0-3}"
    

    传递参数

    echo "参数个数为:$#"
    echo "执行的文件名:$0"
    echo "第一个参数为:$1"
    echo "第二个参数为:$2"
    

    逻辑判断

    if true; then
        echo 'hello true.'
    else
        echo 'hello false.'
    fi
    

    常用的if判断

    功能 示例
    字符串相等 [ "${HOME}" = "/root" ]
    字符串包含 [[ "abbbc" =~ "bb" ]]
    字符串有长度 [ -n "$BASH_VERSION" ]
    数值相等 [ 2 -eq 0 ]
    存在是目录 [ -d /etc/profile.d ]
    存在是文件 [ -f /etc/profile ]

    元素遍历

    for i in `ls -a /home`; do
        echo $i
    done
    

    函数调用

    demoFun(){
        echo "函数开始乘法运算."
        val=`expr $1 \* 100`
        return $val
    }
    
    demoFun 2
    echo "函数返回值(上条指令执行结果):$?"
    

    包含与执行

    • source test.sh :表示包含文件代码,包含后可以使用该文件定义的值
    • . test.sh:字符.后带空格,功能与source相同
    • ./test.sh:表示执行这个文件,它的值不被包括到这个命名空间
  • 相关阅读:
    Delphi 与 C/C++ 数据类型对照表(最新的tokyo)
    Delphi新语法 For ..In
    NSwag生成客户端调用代码
    微服务
    springcloud
    NET高性能IO
    秒杀场景
    CPU开销sql server 性能调优
    WinDbg调试分析 net站点 CPU100%问题
    全链路实践Spring Cloud 微服务架构
  • 原文地址:https://www.cnblogs.com/llil/p/14451822.html
Copyright © 2011-2022 走看看