Cria cabeçalhos para shell scripts

Publicado por Sandro Marcell 18/05/2007

[ Hits: 15.453 ]

Homepage: http://sanmarcell.wordpress.com

Download teste2.sh




Crie cabeçalhos para shell script de forma rápida com este simples script.

Ao ser criado, o arquivo já terá permissão de execução, aí é só pôr os comandos nele e executar normalmente.

  



Esconder código-fonte

#!/bin/zsh

## Gera.sh - Gera cabeçalho para scripts
## Escrito por: Sandro Marcell P. Barbosa (Boa Vista - Roraima)
## E-mail: sandro_marcell@yahoo.com.br
## Slackware GNU/Linux 10.1.0

# Exemplo de uso: nome_script meu_script
# Você também pode especificar a extensão, conforme o interpretador.
# Ex.: nome_script backup.sh para o interpretador 'sh' 
# ou nome_script backup.tcl para o interpretador 'tcl' e assim por diante!

# Definindo o interpretador padrão (substitua por outro se quiser!):
INTERPRETADOR="#!/bin/sh"

# Conteúdo do cabeçalho (altere conforme queira!):
INFO="## <Nome e descrição do script>"
CRIADOR="## Escrito por: <seu nome>"
EMAIL="## E-mail: <substitua pelo seu e-mail>"
DISTRO="## <Substitua por sua distro e a versão>"

# Modificando a saída do comando 'print':
Print () { print '\e[1m'"\n$*\n" ; tput sgr0 ; }

# Checando se o usuário especificou o nome do script:
if [[ $# -eq 0 ]] {
   Print ">>> Uso: $(basename $0) <nome_do_script>"
   bye   
} elif [[ $# -ge 2 ]] {
   Print "> Nome com espaços não são válidos!"
   bye
}

# O usuário pode gravar no diretório corrente?
if [[ ! -w $PWD ]] {
   Print "> Sem permissão para gravar no diretório corrente!"
   bye
}

# E se existir outro script com o mesmo nome no diretório corrente?
if [[ -f $1 ]] {
   Print "> Já existe um script com o mesmo nome neste diretório!"
   bye
}

# Corpo do script:
(
cat << FIM 
$INTERPRETADOR

$INFO
$CRIADOR
$EMAIL
$DISTRO

# Agora basta adicionar comandos nas linhas subseqüentes =)


## Data de criação deste script: $(date "+%a %d/%m/%Y") às $(date "+%T")
FIM
) > $1

# Setando a permissão de execução:
if [[ -f $1 ]] {
   chmod +x $1 2> /dev/stdout
   Print "Script [$1] criado e com permissão de execução!"
} else {
   :
}

bye

## Data de criação deste script: Ter 24/04/2007 às 21:05:09

Scripts recomendados

Detectar sistemas operacionais dos dispositivos na rede via TTL

Script para comparar CD's

e17 Uptade

Firewall Iptables Desktop

Firewall


  

Comentários
[1] Comentário enviado por SMarcell em 26/01/2008 - 02:44h

Versão atualizada desse script:

http://www.slackbr.org/forum/viewtopic.php?f=45&t=15712


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts