通过inotify及时修改cvs的文件组用户

阅读更多

 

[cvs@cvs ~]$ cat bin/adjustcvsgrp

#!/bin/bash

BIN_INW=/usr/bin/inotifywait

BIN_STAT=/usr/bin/stat

BIN_DIRNAME=/usr/bin/dirname

BIN_CHOWN=/bin/chown

BIN_CHMOD=/bin/chmod

MONITOR_PATH=/var/lib/sc/cvs

MONITOR_EVENT=create

$BIN_INW -mrq --event create --format '%w%f %e' $MONITOR_PATH | while read FILE EVENT; do

  if [ "X$EVENT" = "XCREATE" -o "X$EVENT" = "XCREATE,ISDIR" ]; then

    PTH=`$BIN_DIRNAME $FILE`

    GRP=`$BIN_STAT --format="%G" $PTH`

    if [ -e $FILE ]; then

      $BIN_CHOWN cvs.$GRP $FILE

    fi

    if [ -e $FILE ]; then

      $BIN_CHMOD ug+w $FILE

    fi

  fi

done


你可能感兴趣的:(CVS,Bash,F#)