有人知道如何从命令行或日志中获取 Netbackup 作业的写入时间吗?在 GUI 中,当我转到作业详细信息时,它确实会告诉我写入时间。但是,bpdbjobs -all_columns
“已用”列显示作业花费了多长时间,而不是实际写入时间。
答案1
实际上,有一个字段bpdbjobs -all_columns
看起来像“06/09/09 19:41:27 - 结束写入;写入时间:000:06:56”。它可能在一份作业中出现多次,并且并不总是在同一个索引处。但是我迭代所有字段,很容易将它们解析出来并将其转换为秒数,然后将它们全部加起来。
就像是:
sub stripLeadZeros {
my $number = shift;
$number =~ s/^0+//;
return $number;
}
sub parseWriteTime {
my $writeString = shift;
if ( $writeString =~ /([0-9]{3}):([0-9]{2}):([0-9]{2})/ ) {
my $hours = stripLeadZeros($1) || 0;
my $minutes = stripLeadZeros($2) || 0;
my $seconds = stripLeadZeros($3) || 0;
my $totalSec = (($hours * 60) * 60) + ($minutes * 60) + $seconds;
return $totalSec;
}
return 0;
}