Dia Anterior
Publicado por Perfil removido 08/01/2008
[ Hits: 8.808 ]
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
Copiar sistema completo de um HD para o outro (Tipo Ghost)
Cadastro fácil e seguro no NCSA
Cadastrar máquina Win2K ou XP no Linux para Domínio
Acessando o localhost pelo quanta
Nenhum comentário foi encontrado.
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Dock do debian está muito pequena (1)
Instalei Windows 11 e não alterou o Grub do Debian (0)
Linux Mint (21.2) não reconhece teclado mecanico RASEC da PCYES (2)