Controle e Automação
Publicado por Bruno Santos em 15/06/2015
[ Hits: 3.147 ]
#Desauto_V3.0_brsantos_02/06/15 menu="=======>>Desligamento Automático<<======== |==>Modos de desligamento | |Temporizado >>T<< [HH:MM; H:M ou MMMM] | |Agendado >>A<< [H{0..24} M{0..60}] | |Imediato >>I<< | ==========================================" menuset1="|==>Modo Selecionado (Temporizado) |" menuset2="|==>Modo Selecionado (Agendado) |" echo "$menu" read modo if [ $modo = 'I' -o $modo = 'i' ] then sudo shutdown -v -h -P +0 fi if [ $modo = 'T' -o $modo = 't' ] then clear;echo "$menu" echo "|==>Setup Temporizado |\n|Quantas horas? |" read H clear;echo "$menu" echo "|==>Setup Temporizado |\n|Quantos minutos? |" read M clear;echo "$menu\n$menuset1\n|Iniciado "$(date +%H:%M:%S)"||=======Timer=======|" elif [ $modo = 'A' -o $modo = 'a' ] then clear;echo "$menu" echo "|==>Setup Agendado |\n|Para que hora? |" read horaAG clear;echo "$menu" echo "|==>Setup Agendado |\n|Para que minuto? |" read minAG clear;echo "$menu\n$menuset2\n|Iniciado "$(date +%H:%M:%S)"||=======Timer=======|" horaA=$(date +%H) minA=$(date +%M) if [ $(($horaAG-$horaA)) -lt 0 ] then H=$(($horaAG+24-$horaA)) else H=$(($horaAG-$horaA)) fi if [ $(($minAG-$minA)) -lt 0 ] then M=$(($minAG+60-$minA)) H=$(($H-1)) else M=$(($minAG-$minA)) fi else clear;echo "Digite o modo corretamente: T ou t; A ou a; I ou i" exit fi horaA=$(date +%H) minA=$(date +%M) seg=$(date +%S) minF=$M horaF=$H if [ $M -gt 60 ] then while [ $minF -gt 60 ] do minF=$(($minF-60)) horaF=$(($horaF+1)) done fi if [ $horaA -lt 10 -a $horaA -gt 0 ] then horaP=$(($H+${horaA#*0})) else horaP=$(($H+$horaA)) fi if [ $minA -lt 10 -a $minA -gt 0 ] then minP=$(($M+${minA#*0})) else minP=$(($M+$minA)) fi while [ $minP -ge 60 ] do minP=$(($minP-60)) horaP=$(($horaP+1)) done min=$minP hora=$horaP if [ $hora -ge 24 ] then hora=$(($hora-24)) fi if [ $min -lt 10 -o $hora -lt 10 ] then if [ $min -lt 10 -a $hora -lt 10 ] then echo "|Hora_Final 0"$hora":0"$min":"$seg"|| "$horaF"H "$minF"M <==" elif [ $hora -lt 10 ] then echo "|Hora_Final 0"$hora":"$min":"$seg"|| "$horaF"H "$minF"M <==" else echo "|Hora_Final "$hora":0"$min":"$seg"|| "$horaF"H "$minF"M <==" fi else echo "|Hora_Final "$hora":"$min":"$seg"|| "$horaF"H "$minF"M <==" fi Thora=$horaF Tmin=$minF Tseg=0 segC=$seg while [ $Thora$Tmin$Tseg -ne 000 ] do segA=$(date +%S) NsegA=$(date +%N) if [ $segC -ne $segA ] then Tseg=$(($Tseg-1)) segC=$segA fi if [ $Tseg -lt 0 ] then Tseg=59 Tmin=$(($Tmin-1)) fi if [ $Tmin -lt 0 ] then Tmin=59 Thora=$(($Thora-1)) fi echo -n "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b|Hora_Atual "$(date +%H:%M:%S)"|| ==> $Thora""H"" $Tmin""M"" $Tseg""S " done Tseg=0 sudo shutdown -v -h -P +1 clear exit
Script IP Válidos na rede interna
Nome de arquivo com espaço dentro de variáveis
Convertendo Segundos em Horas Usando Bash
Site para montar regras de iptables
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Rust é o "C da nossa geração"? (7)
Ubuntu com problemas no áudio (3)
Debian 13 "trixie&... lançado! (44)
Gerenciador de arquivos é finalizado ao abrir pasta específica (2)