Controle e Automação
Publicado por Bruno Santos em 15/06/2015
[ Hits: 2.856 ]
#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
Comando cd + CDPATH - Facilitando a navegação de arquivos
Economize energia, um bem precioso
Como lidar com variáveis retornadas pelo Expect - removendo CR do fim de linha
Usando variáveis para alterar arquivos com sed, *grep e outros
Site com várias dicas de ajuda para shell script
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Wifi não funciona no Aspire ES 15 com o Debian (11)
Teclado não funciona no Debian (1)
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta