[Perl] Prüfen, ob root-Rechte vorhanden

P

promille

Aktives Mitglied
Thread Starter
Dabei seit
23.11.2004
Beiträge
1.305
Reaktionspunkte
36
Hallo,

ich will innerhalb eine Perl-Scripts prüfen, ob es mit root-Rechnen gestartet wurde. Bei root könnte man ja noch sehen, ob $UID==0, aber wie macht man das bei 'sudo'?

PS: Das ist keine unbedingte Notwendigkeit. Falls keine root-Rechte vorhanden sind, wird es sowieso irgendwann beendet. Durch den Check würde man sich einfach etwas Wartezeit ersparen.
 
bei sudo wird doch die $UID auch angepasst?
 
$< (und $>)
Steht in 'perldoc perlvar'
Hier ein Beispiel:

Code:
% perl -e 'print $< . "\n"'
501

% sudo perl -e 'print $< . "\n"'
Password:
0

HTH
Gruß
maceis
 
sag ich doch ;)
Wobei ich finde man sollte die ausgeschriebene Variante benutzen. Diese kryptischen Kurzformen mochte ich noch nie und wenn doch mal jemand anders in den Code gucken muss, wird er dankbar sein - vielleicht sogar man selbst wenn man nach 2 jahren mal wieder rein gucken muss :)
 
Ich hatte in der Shell einfach ein 'sudo echo $UID' gemacht und deswegen angenommen, dass sich die UID bei sudo nicht ändert.
Problem erledigt, danke wumpscat und maceis!
 
Wobei ich finde man sollte die ausgeschriebene Variante benutzen.
...
Kann man machen. Man darf dann halt 'use English' nicht vergessen
...
Diese kryptischen Kurzformen mochte ich noch nie und wenn doch mal jemand anders in den Code gucken muss, wird er dankbar sein - vielleicht sogar man selbst wenn man nach 2 jahren mal wieder rein gucken muss :)
Kann sein; ich sag nur TMTOWTDI ;).
 
Zurück
Oben Unten