Files
2026-02-16 15:05:15 +01:00

51 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
##########################################################################
# Shellscript : Script benennt User um (Personalnummer)
# Autor : Jobst Heinermann, macenterprise gmbh
# Copyright : macenterprise 2019
##########################################################################
#function
askolddir () {
osascript <<EOF - 2>/dev/null
set strPath to POSIX file "/Users/"
set f to (choose folder with prompt "$1" default location strPath)
set posixF to POSIX path of f
tell application "Finder" to set filesDir to container of f as alias as text
set posixDir to POSIX path of filesDir
posixF
EOF
}
asknewdir () {
osascript <<EOF - 2>/dev/null
tell application "SystemUIServer"
activate
text returned of (display dialog "$1" default answer "")
end tell
EOF
}
#Variabeln
# Abfrage der Userinfos
PDIR=$(askolddir 'Bitte User auswählen') || exit #Pfad zum aktuellen Homefolder
UDIR=$(echo $PDIR | sed 's/.$//') #Breiningung des Pfad
ONAME=$(echo $UDIR | cut -d'/' -f3-) #Separierung des aktuellen Username
NDIR=$(asknewdir 'Bitte Personalnummer eingeben') || exit #legt neuen User & Pfadnamen fest
#User umbenennen
dscl . change /Users/"$ONAME" RecordName "$ONAME" "$NDIR"
#Userfolder Link anlegen
ln -s /Users/"$ONAME" /Users/"$NDIR"
#Userfolder "verstecken"
chflags hidden "$PDIR"
# Meldung
osascript -e 'tell application "SystemUIServer" to display dialog "Benutzername wurde erfolgreich geändert!" buttons {"OK"} default button "OK"'
exit 0