Bem como prometido vamos fazer mais algumas brincadeiras e curiosidades, hoje veremos shell e como uma grande referência gostaria de citar o Aurélio Marinho Jargas e seu ilustre livro Shell Script Profissional publicado pela editora Novatec, qual me ajudou enxergar com outras maneiras e tiranto tudo que eu já fiz em shell, que são coisas muito específicas, eu utilizo um padrão sempre, a estrutura e os comentários e versionamento de meus programas. (Recomendo a compra do Livro)
Vamos Brincar com um Código Aleatório onde veremos alguns métodos de comentá-lo.
#!/bin/bash
#
#Programa que verifica as versoes do SVN
#
#Autor: Hugo Prudente
#
# --------------------------------------------------------------
# Programa que verifica as versões do SVN e executa o instalador.
# Quando não existente ele cria o diretório e baixa o diretorio
# e executa oinstalador
# --------------------------------------------------------------
#
#@ Histórico:
#@ v0.1 - 2009/02/05 - Hugo Prudente:
#@ Criando o Programa
#@ Adicionado menu Opcoes
#@ v0.2 - 2009/08/18 - Hugo Prudente:
#@ Desenvolvendo as Regras.
#@
#@
# [ GLOBAL ]
#
AJUDA="
$(basename $0) [opcões]
Opções:
-V Versão do Programa
-h Ajuda do Programa
-H Histórico de Revisões do $(basename $0)
"
MENSAGEM=`date` Diretorio
#
# [ FUNCOES ]
# Aqui você coloca as funções caso existeam.
function Funcao(){
echo FUNCAO!!!
}
#
# [ MENU OPCOES ]
# Menu de opções ./$0 -h -V -H
###Ele verifica se existem opções seguintes do $0 sendo elas listadas em aqui = ":VhH"
###caso sim ele atribui em "opcao" e verifica no case a saida.
while getopts ":VhH" opcao
do
case $opcao in
V)
echo "Versão: `grep "v\([0-9].[0-9]\)" "$0" |\
tail -1 | cut -d "-" -f 1 | tr -d \#`"
exit 0
;;
h)
echo "$AJUDA"
exit 0
;;
H)
grep "#@" "$0" | less
exit 0
;;
*)
if [ ! -z $opcao ];then
exit 0
fi
;;
esac
done
#
# [ DESENVOLVIMENTO ]
#
###Adentra no Home do $USER
cd ~
###Executa a Função "Funcao"
Funcao
###Vefifica se o diretório scripts existe
####Existe
###Faz o Update
####Não Existe
###Baixa o Diretório
if [ -e scripts ];then
echo $MENSAGEM Existente
cd scripts
svn up --username ted --password t-bag \
--non-interactive
~/scripts/install
else
echo $MENSAGEM Não Existente!!!
cd ~
svn co --username ted --password t-bag \
--non-interactive http://svn.cuelho.com.br/repos/scripts
~/scripts/install
fi
exit
Nenhum comentário:
Postar um comentário