EvalDate v1.0 - Script para Executar Programas em Datas Específicas.

Publicado por Mauricio Ferrari (última atualização em 23/12/2021)

[ Hits: 2.272 ]

Homepage: https://www.youtube.com/@LinuxDicasPro

Download evaldate




Se por algum motivo você queira executar um programa ou comando em uma data específica, você pode usar esse script.

Ele precisa ser executado como root, pois ele vai mexer com a data do sistema temporariamente afim de executar o comando nessa data e depois ele reajustará a data para a atual.

A intensão é que o programa detecte a data escolhida.

Testado no Deepin 20. Pode ser que ele necessite de ajustes.

  



Esconder código-fonte

#!/bin/bash

 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###
 ###                                                         ###
 ### EvalDate - Execução de Programas em Outras Datas        ###
 ### By Mauricio Ferrari - 15/12/2020                        ###
 ###                                                         ###
 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###

###################################################################


 ### Testes de Verificação


[[ $1 == "help" ]] && echo -e " \n \033[1;91;47m Sintaxe: \033[0m
 \033[1;91;47m sudo evaldate usuario mês/dia/ano programa ! \033[0m\n\n \033[1;91;47m Exemplo: \033[0m
 \033[1;91;47m sudo evaldate mauricio 12/15/20 kate \033[0m" && exit 1

[[ $UID != 0 ]] && echo -e " \n \033[1;91;47m Execute como Root ! \033[0m\n   " && exit 1
[[ $1 == "" ]] && echo -e " \n \033[1;91;47m Usuário não Definido ! \033[0m\n " && exit 1
[[ $2 == "" ]] && echo -e " \n \033[1;91;47m Data não Definida ! \033[0m\n    " && exit 1
[[ $3 == "" ]] && echo -e " \n \033[1;91;47m Programa não Definido ! \033[0m\n" && exit 1


 ### Alterando a Data do Sistema


T_DATE=$( date +%m/%d/%y )
TH1=$( date +%H:%M )

timedatectl set-ntp 0
date -s "$2 $TH1"
R_DATE=$( date +%d/%m/%Y )


 ### Executando o Programa

 
sudo -H -u $1 bash -c "$3 &"
sleep 3


 ### Restaurando a Data do Sistema


TH2=$( date +%H:%M )
date -s "$T_DATE $TH2"
timedatectl set-ntp 1


 ### LOOP para o Fechamento do Script


while :; do
   [[ ! `ps axo comm | grep -w $3` ]] && exit 0
   clear
   echo 
   echo -e " \033[32;40m  _____            _ ____        _         _____                     _                  _        \033[0m    "
   echo -e " \033[32;40m | ____|_   ____ _| |  _ \  __ _| |_ ___  | ____|_  _____  ___ _   _| |_ __ _ _ __   __| | ___   \033[0m    "
   echo -e " \033[32;40m |  _| \ \ / / _\` | | | | |/ _\` | __/ _ \ |  _| \ \/ / _ \/ __| | | | __/ _\` | '_ \ / _\` |/ _ \  \033[0m"
   echo -e " \033[32;40m | |___ \ V / (_| | | |_| | (_| | ||  __/ | |___ >  <  __/ (__| |_| | || (_| | | | | (_| | (_) | \033[0m    "
   echo -e " \033[32;40m |_____| \_/ \__,_|_|____/ \__,_|\__\___| |_____/_/\_\___|\___|\__,_|\__\__,_|_| |_|\__,_|\___/  \033[0m    "
   echo -e " \033[32;40m                                                                                                 \033[0m \n "
   echo -e " \033[1;91;47m Programa $3 Executando com a Data de $R_DATE $TH1 ! \033[0m"
   sleep 1
done

Scripts recomendados

Quota em disco

Instalar NetBox (container) em CentOS 7

Driver nVIDIA e ATI

sincleg: sincronizador de legendas (srt)

Multimidia com Zenity


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts