Nowe posty

Autor Wątek: Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku  (Przeczytany 13280 razy)

djpeters

  • Gość
Witam, jestem nowy na forum, a postanowowiłem napisać ten post gdyż nie udalo mi sie znaleść pomocy nigdzie indziej. Tak jak w temacie potrzebuje skryptu bash który stworzy konto/konta użytkowników odczytując ich nazwy z pliku. Jeśli jest na forum ktos kto jest w stanie to zrobić bede bardzo wdzięczny. Oczywiscie jeśli bedzie taka potrzeba jestem w stanie rownież zapłacic.

Pozdrawiam

chmooreck

  • Gość
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #1 dnia: 2011-11-23, 15:10:45 »
A co juz znalazłeś/zrobiłeś ?

Jeśli nic, to szukaj dalej.


P.S. Chyba zbliża się sezon zaliczeniowy ;)

djpeters

  • Gość
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #2 dnia: 2011-11-23, 15:17:38 »
Dokładnie, zbliża sie wielkimi krokami. Póki co jestem w trakcie pisania tego skryptu ale w batch pod windows. Nie ukrywam że linux to dla mnie czarna magia i jestem w tej kwesti zupełnie zielony.


Pozdrawiam

Aman

  • Gość
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #3 dnia: 2011-11-23, 15:32:50 »
Podpowiem:
-pętla for
-cat
-useradd

Nikt za Ciebie zadań nie będzie robił. Po to studiujesz, żeby się tego NAUCZYĆ, a nie żeby ktoś odwalał za Ciebie robotę.

  • Gość
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #4 dnia: 2011-11-23, 21:20:28 »
Cytat: Aman
Podpowiem:
-pętla for
-cat
-useradd
Jeśli zastąpić for while, obędzie się bez cata.

A jak zastąpić useradd newusers, to powinno się w ogóle obyć bez pętli ;) .

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #5 dnia: 2011-11-23, 21:25:53 »
Skoro Z PLIKU, no to chyba jasne, że trzeba wprowadzić go na WEJŚCIE.

Skoro ma z tego pliku CZYTAĆ, to polecenie do wczytywania to read.
A że cały plik, to w pętli while.

Dodawanie użytkownika to useradd.

Jeśli to nie wystarczy ci do sklejenia skryptu, który zajmuje max 3 linie (jedną, jeśli nie przeszkadza stawiasz enterów w trywialnych pętlach), to znaczy, że absolutnie nic się nie nauczyłeś.
Więc za co chcesz dostać zaliczenie? Kupić je? Pracę magisterską też ktoś za ciebie napisze?

djpeters

  • Gość
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #6 dnia: 2011-11-30, 11:06:45 »
to udało mi sie sklecić :]

#!/bin/bash

 NEW_USERS="user_accounts"
 HOME_BASE="/home/"

 cat ${NEW_USERS} | \\
 while read USER PASSWORD
 do
 useradd -g ${PASSWORD} -m -d ${HOME_BASE}${USER} ${USER}
 done

a nazwy uzytkowników w pliku tekstowym w nastepującym formacie

user1 12345
user2 12345
etc.

Prosze o jakies komentarze oraz ewentualne poprawki.


Pozdrawiam
Piotr

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Skrypt tworzący konta użytkowników odczytując ich nazwy z pliku
« Odpowiedź #7 dnia: 2011-11-30, 12:18:44 »
Wygląda rozsądnie.

Dodałbym "" wokół odwołań do zmiennych, bo zawsze może być w nich spacja i wtedy zostanie to rozdzielone na 2 osobne argumenty.

Można też pozbyć się cat-a pisząc:

while read USER PASSWORD; do
  useradd -g "${PASSWORD}" -m -d "${HOME_BASE}${USER}" "${USER}"
done < ${NEW_USERS}