heya,
gibt es die möglichkeit, in abhängigkeit vom eingeloggten benutzer,
nach seinem erfolgreichem login, einen bestimmten befehl auszufuehren ?
schonma danke,
julius
PS: bitte keine antworten zu, 'kannste doch mit init level x machen...'
Befehl xy nach Login ausfuehren
Re: Befehl xy nach Login ausfuehren
hi,
trag einfach den befehl in die "~/.bashrc" ein <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Andre
trag einfach den befehl in die "~/.bashrc" ein <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Andre
Re: Befehl xy nach Login ausfuehren
Wenn du willst, daß der Befehl allg. gültig sein soll, also für jede Anmeldung, dann schreib den Befehl in /etc/profile rein.
Re: Befehl xy nach Login ausfuehren
huh, sorry koennt ihr mir den code nennen ala
wenn username = "Karl" dann fuehre programm xy aus
?
merci
julius
wenn username = "Karl" dann fuehre programm xy aus
?
merci
julius
Re: Befehl xy nach Login ausfuehren
du kannst ja den namen des home Directory überprüfen $home. oder die Ausgabe von who...
"Korrekt, Freundlich, Kostenfrei", wähle genau zwei. (Lutz Donnerhacke in dcsf)
Re: Befehl xy nach Login ausfuehren
~ = HOME-Verzeichnis (entsprechend des Users)
~/.bashrc = HOME-Verzeichnis/.bashrc
"echo $HOME"
angenommen da kommt "/home/Karl" raus, fuegst du den Befehl in die Datei "/home/Karl/.bashrc" ein.
Andre
~/.bashrc = HOME-Verzeichnis/.bashrc
"echo $HOME"
angenommen da kommt "/home/Karl" raus, fuegst du den Befehl in die Datei "/home/Karl/.bashrc" ein.
Andre
Re: Befehl xy nach Login ausfuehren
Oder in der etc/profile
if [ $UID = "1001" ]; then
mach mir den Befehl
fi
Wobei 1001 die UID für karl wäre. Nicht sicher ob $UID oder $uid, aber das läßt sich rausfinden. Kanst Du auch it $GID machen, wenn es ganze Gruppen betreffen soll.
Willst Du nur bestimme Benutzer, die nicht einer Gruppe angehören (oder nich alle Benuzter der Gruppe sollen das Programm ausführen) so kannst Du eine Datei anlegen (z.B. /etc/startlogin) und da alle BenutzerIDs (die Nummerischen, nicht die Namen. Obwohl, irgendwie geht das sicher auch mit den Namen) einfügen und dann per "for" Schleife die akutelle ID nach dem obigen Schema überprüfen
# /etc/startlogin
1001 # Karl
1002 # Egon
1010 # Marianne
# End of /etc/startlogin
#/etc/profile
...
BENUTZER=`cat /etc/startlogin`
for N in $BENUTZER; do
if [ $UID = $N ]; then
mache befehle
break
fi
done
...
Hoffe, die Syntax stimmt so. Bin nicht so fit on shell. Macht u.U mehr Sinn als 200 mal die .bashrc zu editieren. Solltest Du soviele Benutzer haben.
P.S.: Wo ist der Unterschied zwischen .bashrc und .bash-login ?
if [ $UID = "1001" ]; then
mach mir den Befehl
fi
Wobei 1001 die UID für karl wäre. Nicht sicher ob $UID oder $uid, aber das läßt sich rausfinden. Kanst Du auch it $GID machen, wenn es ganze Gruppen betreffen soll.
Willst Du nur bestimme Benutzer, die nicht einer Gruppe angehören (oder nich alle Benuzter der Gruppe sollen das Programm ausführen) so kannst Du eine Datei anlegen (z.B. /etc/startlogin) und da alle BenutzerIDs (die Nummerischen, nicht die Namen. Obwohl, irgendwie geht das sicher auch mit den Namen) einfügen und dann per "for" Schleife die akutelle ID nach dem obigen Schema überprüfen
# /etc/startlogin
1001 # Karl
1002 # Egon
1010 # Marianne
# End of /etc/startlogin
#/etc/profile
...
BENUTZER=`cat /etc/startlogin`
for N in $BENUTZER; do
if [ $UID = $N ]; then
mache befehle
break
fi
done
...
Hoffe, die Syntax stimmt so. Bin nicht so fit on shell. Macht u.U mehr Sinn als 200 mal die .bashrc zu editieren. Solltest Du soviele Benutzer haben.
P.S.: Wo ist der Unterschied zwischen .bashrc und .bash-login ?
Re: Befehl xy nach Login ausfuehren
danke an alle, im moment mach ich das ueber die .bashrc,
aber das mit der $UID is auch interessant...kann man die irgendwie selbst festlegen oder
muss ich die so nehmen wie'se kommen ?
nochma danke,
julius
aber das mit der $UID is auch interessant...kann man die irgendwie selbst festlegen oder
muss ich die so nehmen wie'se kommen ?
nochma danke,
julius
Re: Befehl xy nach Login ausfuehren
Die UID werden vom System (oder von Dir) vergeben, wenn Du einen neuen Benutzer anlegst. Es ist quasi die numerische Represäntation von dem login Namen. cat /etc/passwd; da stehen alle uids mit den zugehörigen Namen drin.
Ein echo $UID (oder echo $uid) auf der Kommandozeile sollte Dir deine aktuelle UID verraten.
Ein echo $UID (oder echo $uid) auf der Kommandozeile sollte Dir deine aktuelle UID verraten.