#!/bin/sh REPOS="$1" TXN="$2" #此處更改大小限制,這里是5M MAX_SIZE=5242880 #此處增加限制文件后綴名 FILTER='\.(zip|rar|o|obj|tar|gz)$' SVNLOOK=/usr/bin/svnlook LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | wc -c` if [ "$LOGMSG" -lt 9 ] then echo "請輸入8個字符以上的提交說明" 1>&2 exit 1 fi files=$($SVNLOOK changed -t $TXN $REPOS |cut -d " " -f 4-) rc=0 echo "$files" | while read f; do if echo $f|tr A-Z a-z|grep -Eq $FILTER; then echo "不支持($FILTER)格式的文件" >&2 exit 1; fi filesize=$($SVNLOOK cat -t "$TXN" "$REPOS" "$f" | wc -c) if [ "$filesize" -gt "$MAX_SIZE" ] then echo "文件不允許大於5M(必須小於等於$MAX_SIZE)B" >&2 exit 1 fi done