Un amministratore di sistema deve scrivere molti script per il monitoraggio e la manutenzione dei sistemi. Durante lo scripting, a volte potrebbe essere necessario fare riferimento a pochi comandi bash nativi in perl. Qui ti mostrerò come chiamare quei comandi nativi negli script perl:
Passaggio 1:crea una subroutine che accetta il comando, esegue e restituisce l'output .
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;
} Passaggio 2:crea un'altra subroutine per eseguire il comando effettivo
#Get Date When script is started running
sub getDate() {
local($command)="date";
local($out)=&runcmd($command);
$logout=$logout." Cron Started At :".$out."\n";
} Fase 3 :Chiama la subroutine come di seguito:
&getDate();
Fase 4:Reindirizza il comando di output della data in un file usando il comando seguente:
open (LOG, ">>/var/log/logfile") || die "can't open logfile\n"; print LOG "$logout\n"; close (LOG) || die;