svnフックスクリプトに必要なegrep部分

svnフックスクリプトに必要なegrep部分

タグ命名規則を適用するために、シェルスクリプトを使用してコミット前のフックスクリプトを作成しようとしています< application>_ < project >_ < version>_ < iteration>。誰でも閲覧して作成できるドキュメント/リンクを案内できますか?多くのリンクを見ましたが、うまくいきません。

私はこれを試しています。

ERROR=$SVNLOOK changed $REPO -t $REV |$EGREP "^A.+?/([a-z0-9_]+)/tags/\1-[0-9]+.[0-9]+.[0-9]+(.[0-9]+)?-(dev|rc[0-9]+|final)/.*$" |$WC -l


#!/bin/sh

REPO="$1"
REV="$2"
ERROR=0
SVNLOOK=/usr/bin/svnlook

AWK=/bin/awk
GREP=/bin/grep
EGREP=/bin/egrep
WC=/usr/bin/wc


ERROR=`$SVNLOOK changed $REPO -t $REV |$EGREP -i "^A.+/tags/.+$" |$WC -l`
if [ $ERROR -ne 0 ]
then

  ERROR=`$SVNLOOK changed $REPO -t $REV |$EGREP "^A.+?/([a-z0-9_]+)/tags/\1-[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?-(dev|rc[0-9]+|final)/.*$" |$WC -l`
  if [ $ERROR -eq 0 ]
  then
    echo "Tag isn't in the correct format" 1>&2
    exit 1
  fi

はい:FV_SSE-MAY-14_2.1.0_03

ここで:アプリケーション= FVプロジェクト= SSE-MAY-14バージョン= 2.1.0反復= 03

答え1

おそらくこれが役に立ちます:

echo FV_SSE-MAY-14_2.1.0_03 | 
  LC_ALL=C egrep "^[A-Z]+_[A-Z]+-[A-Z]+-[0-9]?[0-9]_[0-9]+\.[0-9]+\.[0-9]+_[0-9]+$"

関連情報