zoukankan      html  css  js  c++  java
  • shell脚本编程基础之自定义函数库

    脚本编程知识点

    ${#VAR_NAME}:引用变量中字符的长度
    
    A="25 90 100 120";
    echo ${A#* }:针对A变量,#表示从左往右,*空格表示以空格为分隔符;A变量从左往右去掉第一个空格之前的内容;
    echo ${A##* }:A变量从左往右,去掉最后一个空格之前的内容;
    echo ${A% *}:%表示从右往左;从右往左去掉第一个空格之前的内容;
    echo ${A%% *}:从右往左去掉最后一个空格之前的内容;
    

    自定义函数库

    [root@centos6 ~]# vim functions
    SCREEN=`stty -F /dev/console size 2>/dev/null`     #使用console终端代替当前终端,显示终端的行数和列数
    COLUMN=${SCREEN#* }
    [ -z $COLUMN ] && COLUMN=80
    SPACE=$[$COLUMN-12]
    RED='33[1;31m'
    GREEN='33[1;32m'
    REDUCTION='33[0m'
    
    function success {
           string=$1
           REAL_SPACE=$[$SPACE-${#string}]
           echo -n "$string"
           for i in `seq 1 $REAL_SPACE`;do
                   echo -n " "
           done
           echo -e "[  ${GREEN}OK${REDUCTION}  ]"
    }
    
    function failed {
           string=$1
           REAL_SPACE=$[$SPACE-${#string}]
           echo -n "$string"
           for i in `seq $REAL_SPACE`;do
                   echo -n " "
           done
           echo -e "[${RED}FAILED${REDUCTION}]"
    实现centos6启动服务成功或者失败的显示;成功打印OK,失败打印FAILED
    
    [root@centos6 ~]# vim test.sh      #创建个测试脚本
    #!/bin/bash
    . /root/functions     #导入自定义函数库
    
    success "start service"
    failed "stop service"
    
    [root@centos6 ~]# bash test.sh
    start service                                                                           [  OK  ]
    stop service                                                                            [FAILED]
  • 相关阅读:
    Boost练习程序(强制转换)
    4873279(1002)
    A+B Problem(1000)
    STL练习程序(去除相同元素)
    Boost练习程序(智能指针)
    Sql技巧总结
    MySql Show Status详解
    mysql show status调优
    mysql decimal、numeric数据类型
    Apache Thrift学习小记
  • 原文地址:https://www.cnblogs.com/dongzhanyi123/p/12023462.html
Copyright © 2011-2022 走看看