このスクリプトでは、WinGetInfoPerl オペレータ データセットに HostList と OSList という 2 つのインデックス付きフィールドが作成されます。 スクリプト:
スクリプトにより、ARGV 変数は、呼び出し側のスクリプトを実行オペレータの[パラメータ]入力領域のエントリによって自動入力されます。 スクリプトによって、読み取った行数は、NumRowsRead というオペレータ データセット変数に割り当てられます。 「sleep 30」行は、オペレータを 30 秒間一時停止し、C2OSVD の場所に作成されたフォルダとファイルをユーザが確認できるようにします。 実稼働スクリプトには.sleep 30 行は含まれません。
use strict;
my $filename = "";
print " sample script to retrieve OS level data into variables within C2O¥n¥n";
my $numargs = @ARGV;
if ($numargs == 1) {
$filename = shift @ARGV;
} else {
print "enter path and filename to process:¥n"; chomp($filename = <STDIN>);
}
my $c2osvd = $ENV{'C2OSVD'};
mkdir $c2osvd;
mkdir $c2osvd . "/HostList";
mkdir $c2osvd . "/OSList";
open HANDLE, $filename or die "ERROR: unable to open $filename: $!¥n";
my $counter = 0;
while (<HANDLE>) {
my @fields = split; my $host = $fields[0]; my $opsys = $fields[1]; my $filename1 = $c2osvd . "/HostList/" . $counter; open HH, "> $filename1" or die "ERROR: unable to open $filename1: $!¥n"; print HH $host; close HH; my $filename2 = $c2osvd . "/OSList/" . $counter; open HH, "> $filename2" or die "ERROR: unable to open $filename2: $!¥n"; print HH $opsys; close HH; $counter++;
} my $filename3 = $c2osvd . "/NumRowsRead"; open HH, "> $filename3" or die "ERROR: unable to open $filename3: $!¥n"; print HH $counter; close HH; close HANDLE; sleep 30;
|
Copyright © 2013 CA.
All rights reserved.
|
|