Advertisement
Guest User

Untitled

a guest
Apr 14th, 2019
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.05 KB | None | 0 0
  1. #!/bin/bash
  2. while true
  3. do
  4. # 10=tamanho 30=tamanho 3=quantidade de opcoes
  5. OPCFILE="/tmp/.opcmenu"
  6. NOMEUS="/tmp/.nomeus"
  7. SENHA1="/tmp/.senha1"
  8. SENHA2="/tmp/.senha2"
  9. FDELUSER="/tmp/.deluser"
  10. cat /etc/passwd | cut -d: -f1 | nl > /tmp/.utilizador_lista
  11.  
  12. dialog --menu "Escolha uma opção abaixo" 10 30 3 \
  13. "1" "Adicionar Utilizador" \
  14. "2" "remover Utilizador" \
  15. "3" "listar Utilizadores" 2> $OPCFILE
  16. #O direcionamento do dialog padrao é o 2>!!
  17.  
  18. case $? in
  19. 1)
  20. break ;;
  21.  
  22. 255)
  23. break ;;
  24. esac
  25.  
  26.  
  27.  
  28. listar (){
  29. dialog --textbox /tmp/.utilizador_lista 0 0
  30. }
  31.  
  32. adicionar (){
  33. dialog --inputbox "Digite o nome do novo Utilizador" 7 40 2> $NOMEUS
  34. USERNAME=`cat $NOMEUS`
  35.  
  36. #EXISTS=$( cat /tmp/.utilizador_lista | grep $USERNAME | sed -e 's/:.*//g' )
  37. #if [ "$EXISTS" -eq "$USERNAME" ]; then
  38. # dialog --msgbox "O Utilizador já existe" 7 30
  39. #fi
  40.  
  41. dialog --passwordbox "Digite a senha" 0 0 2> $SENHA1
  42. dialog --passwordbox "Digite sua senha novamente" 0 0 2> $SENHA2
  43.  
  44. PASSWORD=$(cat $SENHA1)
  45. if [ "$(cat $SENHA1)" = "$(cat $SENHA2)" ] ; then
  46. dialog --yesno "confirma a criação do Utilizador $USERNAME ?" 7 45
  47.  
  48. case $? in
  49. 0)
  50. useradd -m -d /home/$USERNAME -s /bin/bash $USERNAME
  51. #passwd $USERNAME --> esse comando abaixo substitiu o comando passwd e faz com que o script fique 100% dentro do dialog. Não mostra a mensagem para adicionar novamente a senha do utilizador criado.!!
  52. echo "$USERNAME:$PASSWORD" | chpasswd
  53. dialog --msgbox "Utilizador criado com sucesso !!" 7 50 ;;
  54. esac
  55. else
  56. dialog --msgbox "As senhas não conferem !!" 7 30
  57. fi
  58. }
  59.  
  60. remover (){
  61. dialog --inputbox " Digite o nome do Utilizador a ser removido" 7 50 2> $FDELUSER
  62. DELUSER=$(cat $FDELUSER)
  63. deluser $DELUSER
  64.  
  65. case $? in
  66. 0)
  67. dialog --msgbox "O Utilizador foi removido com sucesso! " 5 40 ;;
  68. *)
  69. dialog --msgbox "Nome do Utilizador incorreto ou inexistente " 5 30 ;;
  70. esac
  71. }
  72.  
  73. case $(cat $OPCFILE) in
  74. 1)
  75. adicionar;;
  76. 2)
  77. remover;;
  78. 3)
  79. listar;;
  80. esac
  81.  
  82. done
  83.  
  84. rm -f /tmp/.utilizador_lista
  85. rm -f "$OPCFILE"
  86. rm -f "$NOMEUS"
  87. rm -f "$SENHA1"
  88. rm -f "$SENHA2"
  89. rm -f "$FDELUSER"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement