Ein Systemadministrator muss viele Skripte schreiben, um Systeme zu überwachen und zu warten. Während der Skripterstellung müssen Sie manchmal auf einige native Bash-Befehle in Perl verweisen. Hier zeige ich Ihnen, wie Sie diese nativen Befehle in Perl-Skripten aufrufen:
Schritt 1 :Erstellen Sie eine Unterroutine, die den Befehl übernimmt, ausführt und die Ausgabe zurückgibt .
sub runcmd { local($cmd) = @_; alarm $timeout; $childkilled = 0; $childpid = open(CMD, "exec $cmd 2>&1 |"); return "failed to run \"$cmd\"\n" if (!defined($childpid)); local(@output) = ; local($output) = join("\n", @output); alarm 0; close(CMD); $output = $timeout_msg if ($childkilled); return $output; }zurück
Schritt 2:Erstellen Sie eine weitere Subroutine, um den aktuellen Befehl auszuführen
#Get Date When script is started running sub getDate() { local($command)="date"; local($out)=&runcmd($command); $logout=$logout." Cron Started At :".$out."\n"; }
Schritt 3:Rufen Sie die Subroutine wie folgt auf:
&getDate();
Schritt 4:Leiten Sie den Datumsausgabebefehl mit dem folgenden Befehl in eine Datei um:
open (LOG, ">>/var/log/logfile") || die "can't open logfile\n"; print LOG "$logout\n"; close (LOG) || die;