Páginas

quarta-feira, 1 de julho de 2009

Shell Script - Comentando um Código

Boa Tarde galera,

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