zoukankan      html  css  js  c++  java
  • Shell 常用语法规则注意事项

    今天用shell 写了一个脚本,中间处理有很多基本语法规则使用,因为不熟练所以记录下来,供参考
    Shell 常用注意事项

    • 1.变量的赋值跟取值不要带空格

      byteEcho="64 bytes from"
      testA=0
      testB=$testA
      echo $testB
      
    • 2.数字的累加用let

      total_Count=0
      let total_Count=$total_Count+1 
      
    • 3.数组的创建以及添加元素、遍历用法

      testArray=()
      testArray+=("J")
      testArray+=("L")
      testArray+=("Lily")
      
      for name in ${testArray[@]}
      do 
      echo $name
      done
      
    • 4.字符串的包含关系,用通配符处理即可

      A="helloworld"
      B="low"
      if [[ $A == *$B* ]];
      then
        echo "包含"
      else
        echo "不包含"
      fi
      
    • 5.if的条件判断[]内部的变量要保留空格处理(左右两边都要有空格)

      if [ $ip = "Array" ] 
      
    • 6.判断变量是否存在用!即可

      if [ ! $failArray ]
      
    • 7.shell 输出终端的颜色控制

      输出特效格式控制:
      33[0m 关闭所有属性
      33[1m 设置高亮度
      3[4m 下划线
      33[5m 闪烁
      33[7m 反显
      33[8m 消隐
      33[30m -- 33[37m 设置前景色
      33[40m -- 33[47m 设置背景色

      光标位置等的格式控制:
      33[nA 光标上移n行
      3[nB 光标下移n行
      33[nC 光标右移n行
      33[nD 光标左移n行
      33[y;xH设置光标位置
      33[2J 清屏
      33[K 清除从光标到行尾的内容
      33[s 保存光标位置
      33[u 恢复光标位置
      33[?25l 隐藏光标

      33[?25h 显示光标

      整理:
      编码 颜色/动作
        0 重新设置属性到缺省设置
        1 设置粗体
        2 设置一半亮度(模拟彩色显示器的颜色)
        4 设置下划线(模拟彩色显示器的颜色)
        5 设置闪烁
        7 设置反向图象
        22 设置一般密度
        24 关闭下划线
        25 关闭闪烁
        27 关闭反向图象
        30 设置黑色前景
        31 设置红色前景
        32 设置绿色前景
        33 设置棕色前景
        34 设置蓝色前景
        35 设置紫色前景
        36 设置青色前景
        37 设置白色前景
        38 在缺省的前景颜色上设置下划线
        39 在缺省的前景颜色上关闭下划线
        40 设置黑色背景
        41 设置红色背景
        42 设置绿色背景
        43 设置棕色背景
        44 设置蓝色背景
        45 设置紫色背景
        46 设置青色背景
        47 设置白色背景
        49 设置缺省黑色背景
      特效可以叠加,需要使用“;”隔开,例如:闪烁+下划线+白底色+黑字为 33[5;4;47;30m闪烁+下划线+白底色+黑字为33[0m

    #!/bin/bash
    #
    #下面是字体输出颜色及终端格式控制
    #字体色范围:30-37
    echo -e "33[30m 黑色字 33[0m"
    echo -e "33[31m 红色字 33[0m"
    echo -e "33[32m 绿色字 33[0m"
    echo -e "33[33m 黄色字 33[0m"
    echo -e "33[34m 蓝色字 33[0m"
    echo -e "33[35m 紫色字 33[0m"
    echo -e "33[36m 天蓝字 33[0m"
    echo -e "33[37m 白色字 33[0m"
    #字背景颜色范围:40-47
    echo -e "33[40;37m 黑底白字 33[0m"
    echo -e "33[41;30m 红底黑字 33[0m"
    echo -e "33[42;34m 绿底蓝字 33[0m"
    echo -e "33[43;34m 黄底蓝字 33[0m"
    echo -e "33[44;30m 蓝底黑字 33[0m"
    echo -e "33[45;30m 紫底黑字 33[0m"
    echo -e "33[46;30m 天蓝底黑字 33[0m"
    echo -e "33[47;34m 白底蓝字 33[0m"
    
    #控制选项说明
    #33[0m 关闭所有属性
    #33[1m 设置高亮度
    #33[4m 下划线
    echo -e "33[4;31m 下划线红字 33[0m"
    #闪烁
    echo -e "33[5;34m 红字在闪烁 33[0m"
    #反影
    echo -e "33[8m 消隐 33[0m "
    
    #33[30m-33[37m 设置前景色
    #33[40m-33[47m 设置背景色
    #33[nA光标上移n行
    #33[nB光标下移n行
    echo -e "33[4A 光标上移4行 33[0m"
    #33[nC光标右移n行
    #33[nD光标左移n行
    #33[y;xH设置光标位置
    #33[2J清屏
    #33[K清除从光标到行尾的内容
    echo -e "33[K 清除光标到行尾的内容 33[0m"
    #33[s 保存光标位置
    #33[u 恢复光标位置
    #33[?25| 隐藏光标
    #33[?25h 显示光标
    echo -e "33[?25l 隐藏光标 33[0m"
    echo -e "33[?25h 显示光标 33[0m"
    
  • 相关阅读:
    goroutine
    golang package log
    golang单元测试
    golang 文件操作
    go递归打印指定目录下的所有文件及文件夹
    go语言切片作为函数参数的研究
    go数据类型之基本类型
    结束了
    codeforces358D Dima and Hares【dp】
    codeforces1081G Mergesort Strikes Back【期望dp+脑洞】
  • 原文地址:https://www.cnblogs.com/xiaoqiangink/p/12503792.html
Copyright © 2011-2022 走看看