zoukankan      html  css  js  c++  java
  • bash字符串匹配

    #!/bin/sh

    foo()
    {
        local basedir=$1
        local all_entries=`ls -c`


        for entry in $all_entries
        do  
            if test -d $entry; then
                cd $entry&&foo ${basedir}/$entry;cd - >/dev/null
            else
                if [[ $entry =~ .+.(cpp|cc|h|hpp) ]]; then # 看这里
                    #echo $basedir/$entry
                    source_files="$source_files $basedir/$entry"
                fi  
            fi  
        done
    }


    foo .
    echo $source_files


    An additional binary operator, =~, is available, with the same precedence as == and !=.  When it is used, the string to the right of the operator is considered an extended regular expression and matched accordingly (as in  regex(3)).   The  return value  is  0 if the string matches the pattern, and 1 otherwise.  If the regular expression is syntactically incorrect, the conditional expression's return value is 2.


    emacs和posix-basic不支持()特性

    find . -path ./task -prune -o -print | awk '/.cpp$|.h$/ { printf("%s ",$0); }'

    语议:
    if -path ./task; then
        -prune
    else
        -print
    fi

    -o是or的意思


  • 相关阅读:
    新服务器上迁移项目遇到的问题
    xftp传输文件失败
    记录一些mysql常用命令
    微信APP支付
    状态码(更新中···)
    yii ActiveRecord
    MySQL命令行自动补全——mycli安装
    MySQL优化总结
    MySQL读写分离架构——Atlas
    MySQL日志
  • 原文地址:https://www.cnblogs.com/aquester/p/9891725.html
Copyright © 2011-2022 走看看