Dia Anterior
Publicado por Perfil removido 08/01/2008
[ Hits: 9.020 ]
Script criado para compactar arquivos que foram gravados em um diretório com a data corrente, porém é para compactar o conteudo do diretório do dia anterior.
Falta colocar o acesso ao diretório para compactar.
#!/bin/bash #:: __________________________________________________________ #:: #:: Bash Script: diaanterior.sh #:: Autor: William Alves Santos #:: #:: Updates: #:: Enhancement Req. #:: And Bug Reports: williamalvessantos@gmail.com #:: #:: Built/Tested On: Linux kernel 2.6.18-4-686 #:: Requirements: OS: Any common Linux #:: #:: Purpose: Dia Anterior #:: #:: Assumptions And #:: Limitations: * Assumes read-write access #:: #:: Last Update: 2007-11-22 #:: __________________________________________________________ # # Dia Anterior - Rotina criada para compactar arquivos em uma pasta do dia anterior # =============================================== # ANO=$(date +%Y) # DECLARA ANO ATUAL -> YYYY = 2007 MES=$(date +%m) # DECLARA MES ATUAL -> MM = 12 MESDIV=$( expr $MES / 1 ) DIA=$(date +%d) # DECLARA DIA ATUAL -> DD = 31 DIADIV=$( expr $DIA / 1 ) ANOANT=$((--ANO)) # DECREMENTA -1 ANO -> YYYY = 2006 MESANT=$((--MESDIV)) # DECREMENTA -1 MES -> YY = 11 MESANTDIV=$( expr $MESANT / 1 ) DIAANT=$((--DIADIV)) # DECREMENTA -1 DIA -> DD = 30 DIAANTDIV=$( expr $DIAANT / 1 ) # echo HOJE $ANO-$MES-$DIA ANO=$(date +%Y) # DECLARA ANO ATUAL -> YYYY = 2007 MES=$(date +%m) # DECLARA MES ATUAL -> MM = 12 MESDIV=$( expr $MES / 1 ) DIA=$(date +%d) # DECLARA DIA ATUAL -> DD = 31 DIADIV=$( expr $DIA / 1 ) ANOMLTPL400=`expr $ANO % 400` ANOMLTPL100=`expr $ANO % 100` ANOMLTPL4=`expr $ANO % 4` case $MES in # Informa termino do MES - ANTERIOR 01) DIAFINALMESANT=31 ;; 02) DIAFINALMESANT=31 ;; 03) if [[ $ANOMLTPL4 == 0 ]] && [[ $ANOMLTPL100 != 0 ]] || [[ $ANOMLTPL400 == 0 ]] ; then DIAFINALMESANT=29 ; else DIAFINALMESANT=28 ; fi ;; 04) DIAFINALMESANT=31 ;; 05) DIAFINALMESANT=30 ;; 06) DIAFINALMESANT=31 ;; 07) DIAFINALMESANT=30 ;; 08) DIAFINALMESANT=31 ;; 09) DIAFINALMESANT=31 ;; 10) DIAFINALMESANT=30 ;; 11) DIAFINALMESANT=31 ;; 12) DIAFINALMESANT=30 ;; esac case $MES in # Informa termino do ANO - ANTERIOR 01) MESANT=12 ;; esac # Resolve virada do ANO if [[ $DIADIV == 1 ]] && [[ $MESDIV == 1 ]] ; then echo $ANOANT; else ANOANT=$ANO ; fi > /dev/null # Resolve virada do MES if [[ $DIADIV == 1 ]] ; then echo $MESANTDIV ; else MESANTDIV=$MESDIV ; fi > /dev/null # Resolve virada do DIA primeiro if [[ $DIADIV == 1 ]] ; then DIAANTDIV=$DIAFINALMESANT ; fi > /dev/null VARZERO=0 # Resolve DIA menor que 10 if [ $DIAANTDIV -lt 10 ] ; then echo $VARZERO$DIAANTDIV ; else echo $DIAANTDIV ; fi > antdia ANTDIA=$(cat antdia) # Resolve MES menor que 10 if [ $MESANTDIV -lt 10 ] ; then echo $VARZERO$MESANTDIV ; else echo $MESANTDIV ; fi > antmes ANTMES=$(cat antmes) # Declara ANO para a varivel padrao ANT___ ANTANO=$ANOANT if [ $ANTMES == '00' ] ; then ANTMES=12 ; else echo $ANTMES ; fi > /dev/null echo HOJE $ANO-$MES-$DIA echo ONTEN $ANTANO-$ANTMES-$ANTDIA
Validar e-mails em arquivo CSV
Alguns riffs do Rock tocados com o comando beep
Colocar palavras em minúsculas
Nenhum comentário foi encontrado.
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
Instalar Linux em notebook Sony Vaio VPCEG13EB (10)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)









