Dia Anterior
Publicado por Perfil removido 08/01/2008
[ Hits: 8.978 ]
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
Gerar backup do MySQL ou Postgres
Instala/Remove/Atualiza com APT [gerenciador_apt.sh]
Nenhum comentário foi encontrado.
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
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Trazendo de volta o Serviços em Segundo Plano no Plasma6









