システム管理者は、システムを監視および保守するための多くのスクリプトを作成する必要があります。スクリプト作成中に、perlでいくつかのネイティブbashコマンドを参照する必要がある場合があります。ここでは、perlスクリプトでこれらのネイティブコマンドを呼び出す方法を紹介します:
ステップ1:コマンドを受け取り、実行して出力を返すサブルーチンを作成します。
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; }を返します
ステップ2:実際のコマンドを実行するための別のサブルーチンを作成します
#Get Date When script is started running sub getDate() { local($command)="date"; local($out)=&runcmd($command); $logout=$logout." Cron Started At :".$out."\n"; }
ステップ3:以下のようにサブルーチンを呼び出します:
&getDate();
ステップ4:以下のコマンドを使用して、日付出力コマンドをファイルにリダイレクトします。
open (LOG, ">>/var/log/logfile") || die "can't open logfile\n"; print LOG "$logout\n"; close (LOG) || die;