jeansilvaalves
(usa Debian)
Enviado em 26/01/2018 - 21:48h
Boa noite amigo, alguém poderia me ajudar com o meu script? As opções criadas são:
1 Verificar usuário logado.
2 Adicionar novo usuário no sistema.
3 Deletar usuário do sistema.
4 Adicionar novo grupo no sistema.
5 Deletar grupo do sistema.
6 Repositórios que encontram se no sistema Linux.
7 Sair do programa.
As opções 1 e 2 estão funcionando de boa. O script adiciona e deleta o usuário do sistema, mas as opções 3 e 4, eu não consegui fazer com que funcionassem corretamente. Opções 6 e 7 também estão funcionando corretamente. No Dialog, ele me da os botões de <aceitar> e <cancelar>. meus amigos, eu posso usar esse <cancelar> como saída do programa? aceito ideias e melhorias.
segue script:
#!/bin/bash
clear
(
echo 10; sleep 1 # Mostra Barra de progresso até 10%
echo 25; sleep 1 # Mostra barra de progresso até 25%
echo 42; sleep 1
echo 94; sleep 1
echo 100; sleep 1) |
dialog \
--title 'SISTEMA XPTO' \
--gauge 'CARREGANDO O PROGRAMA, AGUARDE ...' \
8 40 60
sleep 1
clear
opc=0
while [ "$opc" -ne 7 ]; do # Loop. Enquanto não for escolhido a opção 7, ele retornará ao menu principal
opc=$(dialog --stdout \
--menu "Escolha uma das opções abaixo:" \
0 0 0 \
1 "Verificar usuário logado." \
2 "Adicionar novo usuário no sistema." \
3 "Deletar usuário do sistema." \
4 "Adicionar novo grupo no sistema." \
5 "Deletar grupo do sistema." \
6 "Repositórios que encontram se no sistema linux." \
7 "Sair do programa.")
case $opc in
1) who -H # Mostra usuários logados no sistema
echoecho "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
2) nome=$(dialog --stdout --inputbox "Digite o usuário a ser adicionado no sistema:" 0 0)
adduser "$nome" # Adiciona usuários no sistema
echo
echo "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
3) usu=$(dialog --stdout --inputbox "Digite o nome do usuário a ser deletado:" 0 0)
userdel -r "$usu" # Deleta usuário do sistema.
echo
echo "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
4) grupo=$(dialog --stdout --inputbox "Digite o nome do novo grupo:" 0 0)
addgroup "$grupo" # cria grupo no sistema.
echo "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
5) del=$(dialog --stdout --inputbox "Digite o grupo a ser deletado:" 0 0)
groupdel "$del" # esse comando deleta grupo do sistema.
echo
echo "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
6) clear
echo "Repositórios que estão no sistema linux."
echo
cd /var/cache/apt/archives/ # diretório onde ficam os repositórios do sistema
ls -l | less # lista os repositórios
echo
echo "Aperte <ENTER> para retornar ao menu principal."
read
clear
;;
7) dialog \
--title 'Saindo do Programa' \
--sleep 2 \
--infobox '\nFinalizando em 2 segundos...' \
0 0
exit
;;
*) echo "Opção Invalida."
echo
echo "Aperte <ENTER. para retornar ao menu principal."
read
clear
;;
esac
done