50 lines
1.5 KiB
Bash
50 lines
1.5 KiB
Bash
#!/bin/bash
|
|
|
|
clear
|
|
|
|
# Funktion zum Benutzer erstellen
|
|
create_user() {
|
|
local username="$1"
|
|
local password="$2"
|
|
local groups="$3"
|
|
|
|
# Benutzer erstellen mit Passwort
|
|
sudo useradd -m "$username" -G "$groups"
|
|
echo "$username:$password" | sudo chpasswd
|
|
}
|
|
|
|
# Anzahl der zu erstellenden Benutzer abfragen
|
|
read -p "Geben Sie die Anzahl der zu erstellenden Benutzer an: " num_users
|
|
|
|
# Überprüfen, ob die Eingabe eine positive ganze Zahl ist
|
|
if ! [[ "$num_users" =~ ^[1-9][0-9]*$ ]]; then
|
|
echo "Ungültige Eingabe. Bitte geben Sie eine positive ganze Zahl ein."
|
|
exit 1
|
|
fi
|
|
|
|
# Benutzername für alle Benutzer festlegen
|
|
read -p "Geben Sie den gemeinsamen Benutzernamen für alle Benutzer ein: " common_username
|
|
|
|
# Passwort für alle Benutzer festlegen
|
|
read -s -p "Geben Sie das gemeinsame Passwort für alle Benutzer ein: " common_password
|
|
echo # Neue Zeile für die Eingabeaufforderung
|
|
|
|
# Abfrage, ob die Benutzer zusätzliche Gruppen erhalten sollen
|
|
read -p "Möchten Sie zusätzliche Gruppen für alle Benutzer hinzufügen? (j/n): " add_groups
|
|
|
|
groups=""
|
|
if [[ "$add_groups" == "j" ]]; then
|
|
read -p "Geben Sie die zusätzlichen Gruppen für alle Benutzer (kommagetrennt) ein: " groups
|
|
fi
|
|
|
|
# Schleife zur Erstellung der Benutzer
|
|
for ((i = 1; i <= num_users; i++)); do
|
|
username="${common_username}$(printf "%02d" "$i")"
|
|
|
|
create_user "$username" "$common_password" "$groups"
|
|
echo "Benutzer $username wurde erstellt."
|
|
done
|
|
|
|
echo "Die Benutzer wurden erfolgreich erstellt."
|
|
|