• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    shell基础学习中的字符串操作、for循环语句示例

    复制代码 代码如下:

    #!/bin/bash
    my_name="jxq"

    echo $my_name
    echo ${my_name}

    # ------------------------------------
    # 字符串操作
    # ------------------------------------

    # 单引号字符串的限制,双引号没有这些限制:
    # 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
    # 单引号字串中不能出现单引号(对单引号使用转义符后也不行)
    name="will"
    age=24
    my_full_name='${name}${age}'
    echo ${my_full_name}
    my_full_name="${name}${age}"
    echo ${my_full_name}

    # 字符串拼接
    echo ${name}${age}

    # 字符串长度
    echo ${#name} # 4

    # substring
    message="I want to be healthy"
    echo ${message:2} # want to be health, 2是position
    echo ${message:2:4} # want,2是position,4是len

    # delete shortest match from front: ${string#substring}
    echo ${message#*want}
    # delete shortest match from back: ${string%substring}
    echo ${message%healthy}

    # delete longest match from front: ${string##substring}
    echo ${message##*h}
    # delete longest match from back: ${string%%substring}
    echo ${message%%t*}

    # find and replace: ${string/pattern/replacement}
    book_name="Catch Eye Eye"
    echo ${book_name/Eye/Cat}
    # find and replace all match: ${string//pattern/replacement}
    echo ${book_name//Eye/Cat}

    file_path="/usr/local/bin"
    # only replace when pattern match the beginning: ${string/#pattern/replacement}
    echo ${file_path/#\/usr/tmp}
    # only replace when pattern match the end: ${string/%pattern/replacement}
    echo ${file_path/%bin/tmp}

    # string index
    stringZ=abcABC123ABCabc
    echo `expr index "$stringZ" C12` # Mac OSX不支持expr


    # ------------------------------------
    # 语句
    # ------------------------------------

    # if
    if true
    then
     echo "ok, true"
    fi

    # 写成一行
    if true; then echo "ok"; fi

    var='12'
    if [ $var -eq 12 ]; then
        echo "This is a numeric comparison if example"
    fi

    if [ "$var" = "12" ]; then
        echo "This is a string if comparison example"
    fi

    if [[ "$var" = *12* ]]; then
        echo "This is a string regular expression if comparison example"
    fi

    name="jxq"
    if [ "$name" = "jxq" ]; then
     echo "hello" $name
    fi


    # 循环语句
    for item in `ls *.sh`
    do
     echo $item
     echo "completed"
    done

    # 写成一行
    for item in `ls *.sh`; do echo $item; echo "completed"; done;

    counter=1
    while :
    do
     echo "bee"
     let "counter=$counter+1"
     if [ $counter -eq 3 ]; then
      break # break/continue与Java类似
     fi
    done

    # Case语句
    opt="install"
    case "${opt}" in
     "install" )
      echo "install..."
      exit

     
     "update" )
      echo "update..."
      exit

     
     *) echo "bad opt"
    esac

    您可能感兴趣的文章:
    • Shell中的for和while循环详细总结
    • Shell中的for循环总结
    • Shell脚本中使用for循环和cat命令实现按顺序合并文件
    • Shell脚本for循环语句简明教程
    • Shell中的循环语句for、while、until实例讲解
    • 一个shell for循环与case结合的脚本(监控程序状态)
    • shell for循环与数组应用介绍
    • Linux shell 实现用for循环100次的方法
    上一篇:Python创建、删除桌面、启动组快捷方式的例子分享
    下一篇:shell脚本中28个特殊字符的作用简明总结
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    shell基础学习中的字符串操作、for循环语句示例 shell,基础,学习,中的,字符串,