ola_mundo.sh - Mostra a mensagem "Olá Mundo" na tela
Publicado por Daniel Zaia Manzano (última atualização em 21/08/2013)
[ Hits: 11.992 ]
Observações:
- Execute primeiramente com a opção -h ou --help para conhecer as opções disponíveis.
- A opção -p ou --progressiva somente funcionará caso o pacote "pv" esteja instalado.
#!/bin/bash
#
# ola_mundo.sh - Mostra a mensagem "Olá Mundo" na tela
#
# Autor: Daniel Zaia Manzano <sh11td0wn@gmail.com>
#
# -------------------------------------------------
#
# Este programa mostra a mensagem "Olá Mundo" na tela.
#
# Exemplo:
#
# $ ./ola_mundo.sh
#
# Olá Mundo
#
# -------------------------------------------------
#
# Histórico de versões:
#
# v0.1 08-08-2013 (Daniel):
# - Funcionalidade básica
# - Adicionada opção de ajuda -h e --help
# - Adicionada opção de versão -V e --version
#
# v0.2 08-08-2013 (Daniel):
# - Melhoria estética na mensagem de versão.
# - Correção de bug > Execução anormal se não houvesse opções.
#
# v0.3 08-08-2013 (Daniel):
# - Correção de bug > Nada acontecia se não houvesse opções.
#
# v0.4 08-08-2013 (Daniel):
# - Melhoria estética na mensagem de opção inválida.
# - Suporte a múltiplas opções.
# - Adicionada opção de saída colorida -c e --color.
# - Adicionada opção de saída maiúscula -u e --upper.
#
# v0.5 08-08-2013 (Daniel):
# - Retirada da opção de saída maiúscula -u e --upper.
# - Correção de bug > opções de saída colorida com resultado anormal.
#
# v0.6 08-08-2013 (Daniel):
# - Adicionada opção de saída progressiva -p e --progressiva.
#
# v0.7 09-08-2013 (Daniel):
# - A mensagem principal deixa de ser variável e se torna função.
# - Correção de bug > opção de saída progressiva com resultado anormal.
#
# v0.8 09-08-2013 (Daniel):
# - A mensagem principal deixa de ser função e se torna variável.
#
# v0.9 09-08-2013 (Daniel):
# - Correção de bug > múltiplas opções com resultado anormal.
# - Correção de bug > resultado padrão estava vazio.
#
# v0.9a 09-08-2013 (Daniel):
# - Correção de bug > Resultados com aparência diferente dependendo da
# opção.
#
# v1.0 11-08-2013 (Daniel):
# - Modificação da mensagem de ajuda.
#
# -------------------------------------------------
#
# BUGs conhecidos
#
# * Caso a 2ª opção seja a inválida, aparece somente a 1ª como inválida.
#
# -------------------------------------------------
#
# Variáveis
#
MSG_HELP="
$(basename "$0") - Mostra a mensagem 'Olá Mundo' na tela.
Uso: $(basename "$0") [ -h | -V | -c | -p ]
-h, --help Mostra essa mensagem de ajuda e sai.
-V, --version Mostra a versão do programa e sai.
-c, --color Exibe a mensagem colorida.
-p, --progressiva Exibe a saída de forma progressiva.
"
MSG_VERSION="
$(basename "$0") - versão $(egrep 'v.\..' $0 | cut -d " " -f 2 | tail -n 1 |\
tr -d v)
"
MSG_INVALID_OPTION="
"$1" -- Opção inválida
"
OLA_MUNDO=" Olá Mundo "
#
# Flags
#
COLOR=0
PROGRESSIVA=0
#
# -------------------------------------------------
#
# Verificação de opções da linha de comando
#
while test -n "$1"
do
case "$1" in
-h | --help)
echo "$MSG_HELP"
exit 0
;;
-V | --version)
echo "$MSG_VERSION"
exit 0
;;
-c | --color)
COLOR=1
;;
-p | --progressiva)
PROGRESSIVA=1
;;
*)
echo "$MSG_INVALID_OPTION"
exit 1
;;
esac
shift
done
#
# -------------------------------------------------
#
# Ativando flags
#
test "$COLOR" = 1 && OLA_MUNDO=$(echo -e "{FONTE}33[31m$OLA_MUNDO{FONTE}33[m")
if test "$PROGRESSIVA" = 1
then
echo "$OLA_MUNDO" | pv -q -L 10
exit 0
fi
#
# -------------------------------------------------
#
# Bloco principal
#
echo "$OLA_MUNDO"
exit 0
#
Script para verficar se um pacote está instalado no Slackware
System Software 2.1 - Instale e remova repositórios e programas de forma simples
cieQemu - Interface para o qemu (Shell & Xdialog)
Script de backup para cd-rw e outro local (pasta mapeada)
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Fiz uma pergunta no fórum mas não consigo localizar (20)
Quais os códigos mais dificeis que vcs sabem fazer? (8)
Pfsense inacessivel após um periodo de tempo (1)
Não consigo instalar distro antiga no virtualbox nem direto no hd (9)









