GNU/Linux >> Linux Esercitazione >  >> Linux

Come eseguire un comando bash Linux in uno script PERL?

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;

Scarica lo script PERL completo


Linux
  1. Come utilizzare la password crittografata nello script della shell Bash Linux

  2. Come eseguire il debug di uno script Bash?

  3. Linux – Come eseguire uno script sul blocco/sblocco dello schermo?

  4. Come eseguire uno script??

  5. Come eseguire ripetutamente lo script bash ogni N secondi?

Come eseguire comandi particolari senza password Sudo in Linux

Come eseguire i comandi del file .sh tutto in una volta in Linux

Come eseguire più comandi Linux in un unico comando

Come eseguire lo script della shell come servizio SystemD in Linux

Come eseguire uno script Bash

Come eseguire più comandi Linux contemporaneamente nel terminale Linux