Controle e Automação
Publicado por Bruno Santos em 15/06/2015
[ Hits: 3.083 ]
#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
Atendimento ou suporte remoto em estações de trabalho via VNC
Truques para tratamento de variáveis em shell script
Trabalhando com parâmetros em Shell Script
Como lidar com variáveis retornadas pelo Expect - removendo CR do fim de linha
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Olha que maravilha, Arch no C2D 7400, 2GB de RAM, vídeo onboard e no G... (1)
Mikrotik não abre o webmail-segur... da Locaweb (0)
Jogos baixados na Central de Aplicativos mas que não abrem (1)
debian com wayland, configuracao de teclado. Mudou Tudo! [RESOLVIDO] (1)