Usando variáveis em shell script
Publicado por Jamilson Silva do Carmo 30/07/2009
[ Hits: 12.674 ]
Este script desenvolvi com intuito de praticar o que venho aprendendo no livro do guru Aurélio C. Marinho.
#!/bin/bash # # -------------------------------------------- # Criado em: Qua 29/Jul/2009 - 11:22hs # Autor: Jamilson Silva <jscarmo@ig.com.br> # Manutenção: # -------------------------------------------- # # Propósito Script: # # # Histórico: # v1.0 - Aprendendo a usar o comando date # v1.0.1 - Incluida a opção -h, --help # v1.0.2 - Arrumado o bug quando alguma opção é passada errada # v1.0.3 - Incluidas as opções (-t, --tudo), (-d, --dia), (-b, --bi) # # Licença: GPL # Inicialização das variáveis VERSAO=$(grep '^# v' $0 | tail -n 1 | cut -d"-" -f1 | tr -d "#v") # Extrai versão do cabeçalho do programa ESTADO="Manaus,AM" # Define nome do estado e sua capital EXTENSO=0 # Ativa a data por extenso HORA=0 # Ativa a hora TUDO=0 # Ativa data completa ANO=0 # Ativa a verificaçã se ano é bissexto ou não DIA=0 # Ativa verificação do dia da semana SOBRE=" mostrando_datas $VERSAO\n\n Copyright © 2009 Free Software Foundation, Inc.\n Licença GPLv3+: GNU GPL versão 3 ou posterior <http://gnu.org/licenses/gpl.html>\n Este software é livre: você é livre para mudá-lo e redistribuí-lo.\n NÃO HÁ GARANTIA, para a extensão permitida por lei.\n\n Escrito por Jamilson Silva.\n " MENSAGEM_USO="\n Uso: `basename $0` [OPÇÕES]\n\n \tOPÇÕES:\n \t -e, --ext \tMostra data na forma extensa\n \t -h, --hora \tMostra a hora\n \t -t, --tudo \tMostra a data completa\n \t -a, --ajuda \tMostra esta tela e sai\n \t -d, --dia \tMostra o dia da semana\n \t -b, --bi \tMostra se o ano é bissexto ou não\n \t -v, --versao \tMostra a versão do programa e sai \n\n Comunicar 'bugs' para <jscarmo@ig.com.br> " ERRO="\n $0: opção inválida -- '`echo "$1" | tr -d "-" `'\n Tente '$0 --help' para mais informação.\n " dia_semana(){ dia=$(date +%w) if [ $dia -eq 0 ]; then echo -e "\nDia da Semana: $(date +%A)\n" elif [ $dia -eq 6 ]; then echo -e "\nDia da Semana: $(date +%A)\n" else echo -e "\nDia da Semana: $(date +%A)-feira\n" fi } ano_bissexto(){ ano=$(cal 2 $(date +%Y) | grep 29 | wc -l) if [ $ano -eq 1 ]; then echo -e "\nAno: É Bissexto" else echo -e "\nAno: Não É Bissexto" fi echo } if [ $# -eq 0 ]; then date # $(date) #echo -e "Você deve passar um parâmetro \nVerifique usando $0 -a para saber quais parâmetros usar\n" fi while [ -n "$1" ]; do case "$1" in -e|--ext) EXTENSO=1 ;; -h|--hora) HORA=1 ;; -t|--tudo) TUDO=1 ;; -a|--ajuda) echo -e $MENSAGEM_USO exit 0 ;; -d|--dia) DIA=1 ;; -b|--bi) ANO=1 ;; -v|--versao) echo -e $SOBRE exit 0 ;; *) echo -e $ERRO ; exit 1 ;; esac shift done if [ "$EXTENSO" = 1 ]; then echo -e "\n$(date +"Manaus,AM %d de %B de %Y")\n" fi if [ "$HORA" = 1 ]; then echo echo "Hora Certa: $(date +%H:%M:%S)" echo fi if [ "$ANO" = 1 ]; then ano_bissexto fi if [ "$DIA" = 1 ]; then dia_semana fi if [ "$TUDO" = 1 ]; then echo "" dia_semana echo "Hora: $(date +%H:%M:%S)" echo -e "\n$(date +"Manaus,AM %d de %B de %Y")" ano_bissexto fi
Script para criação de usuários do Samba
Script para start,stop de .jar
Instalação do Gentoo - Parte 1
Bloqueando ataque de força bruta em ssh através de script bash
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Jogando com Proton no LInux (0)
Ingress NGINX Controller CVSS base score of 9.8 (4)
Impossível corrigir problemas, você manteve (hold) pacotes quebrados. (2)