shutdown scrip in perl

d4mi4n

volksoperator on duty
dieses script sollte eigentlich die kiste runterfahren, schliesst aber nur das eterm in dem es aufgerufen wird, es wird ausm fluxboxmenü aufgerufen:

[exec] (shutdown) {sudo Eterm -e shutdown.pl}

hier der code von shutdown.pl

Code:
#!/usr/bin/perl

print "herunterfahren? [y/n] : ";
my $foo = <STDIN>;
if (preg_match($foo, "/YyNn/")){
	system "shutdown -p now\n";
}
 
hi,
anstelle von

Code:
system "shutdown -p now"

musst du

Code:
exec "shutdown -p now"

verwenden.

mfg zup
 
warum exec? is doch egal obs nochmal zurück ins script springt oder nicht, wenns runterfährt is egal obs offen ist oder nicht
 
Bei mir funktionierts mit exec .. mit system nicht :D

ed:
vielleicht beendet shutdown den Parent-Prozess und somit auch den neu geforkten Prozess der "exec shutdown" aufruft und damit auch sich selbst *wirres zeug red*
deshalb hab ich exec benutzt und siehe da es funktioniert :ugly:
 
Zuletzt bearbeitet:
ich bin so :huth:

1. bei preg_match kommt erst der reguläre ausdruck, dann der string
2. preg_match ist von php und nicht von perl
3. es heisst if (string =~ /YyJj/)
4. es geht auch mit system
5. es funktioniert :D
 
Zurück
Oben