的輸出我從SGE qstat
命令看起來像這樣的輸出: http://dpaste.com/1177012/plain/解析SGE的(qstat命令-j「*」)使用AWK或Perl
它與下面的命令獲得:
$ qstat -j "*"
我想要做的是分析的qstat命令-j輸出「*」 成表格格式:
#job_number submission_time owner usage
526715 Sat Apr 13 18:43:19 2013 yminakuc cpu=33:04:05:52, mem=2471753193.24440 GBs, io=619.41401, vmem=864.175G, maxvmem=920.232G
....
我呈丁邏輯思維能力,以創建可作爲管道代碼:
$ qstat -j "*" | ./mycodeparse.pl
什麼是做在AWK或Perl的方式? 或者是否有任何可用的unix工具?
我堅持用下面的結構(邏輯)
#!/usr/bin/perl -w
use strict;
use Data::Dumper;
my %hash;
my $curr;
while (my $line = <>) {
chomp $line;
if ($line == /^=/) {
$hash{$line}=$curr = [];
}
elsif ($line =~ /^job_number/ ||
$line =~ /^owner/ ||
$line =~ /^usage/ ||
$line =~ /^submission_time/)) {
push @$curr,$line;
}
}
print Dumper \%hash ;
# Hash print everything instead of selected lines.
沒有工具可以自動完成。 Perl或awk腳本是完美的解決方案。我希望你期待着我們爲你寫信。 – Barmar
你不能使用'qstat -xml'和一個XML解析器嗎? – GWW