Listar arquivos editados no CVS
De DTI Wiki
Editados de todos os usuários
- Acessar via ssh o cvsserver;
- Se não existir, criar o script a seguir (lista_editados_new.sh), dar permissão de execução e executar com .\lista_editados_new.sh ;
- O script está salvo no cvsserver (/home/b/i/benevenuti/scripts/lista_editados_new.sh) e;
- Aqui na Wiki:
#!/bin/bash users=$(getent group cvs|cut -d: -f 4 |sed 's/,/ /g') for u in $users do find /home/cvs -name fileattr.xml -exec grep -H -B 1 '<editor name="'$u'"' {} \; |grep '<file' |sed -e 's#CVS/fileattr.xml.*="##g' -e 's/">//g' -e 's#/home/cvs/##g' > editados_$u.txt if [ -s editados_$u.txt ]; then (echo "$u, Você possui os arquivos listados abaixo editados no CVS. "; cat editados_$u.txt |sed -e 's/\/CVS\/fileattr:F/\//g' -e 's/\t.*//g'; echo " EMAIL ENVIADO VIA SCRIPT. FAVOR NÃO RESPONDER.") |mail -aFrom:`whoami`@upf.br -s "$u, você possui arquivos editados no CVS" `whoami`@upf.br,$u@upf.br echo "+ Email de aviso enviado para $u." else echo "- $u não possui arquivos em edição." fi rm -rf editados_$u.txt done
- Rodar o script sem parâmetros.
Editados de um determinado usuário
- Acessar via ssh o cvsserver;
- Se não existir, criar o script a seguir (lista_editados_user.sh), dar permissão de execução e executar com .\lista_editados_user.sh USUÁRIO ;
- O script está salvo no cvsserver (/home/b/i/benevenuti/scripts/lista_editados_user.sh) e;
- Aqui na Wiki:
#!/bin/bash if [ -z $1 ]; then echo "Uso: $0 <USUARIO>" else users=$1 for u in $users do find /home/cvs -name fileattr.xml -exec grep -H -B 1 '<editor name="'$u'"' {} \; |grep '<file' |sed -e 's#CVS/fileattr.xml.*="##g' -e 's/">//g' -e 's#/home/cvs/##g' > editados_$u.txt if [ -s editados_$u.txt ]; then (echo "$u, Você possui os arquivos listados abaixo editados no CVS. "; cat editados_$u.txt |sed -e 's/\/CVS\/fileattr:F/\//g' -e 's/\t.*//g'; echo " EMAIL ENVIADO VIA SCRIPT. FAVOR NÃO RESPONDER.") |mail -aFrom:`whoami`@upf.br -s "$u, você possui arquivos editados no CVS" `whoami`@upf.br,$u@upf.br echo "+ Email de aviso enviado para $u." else echo "- $u não possui arquivos em edição." fi rm -rf editados_$u.txt done fi
- Rodar o script com o parâmetro nome do usuário.