我想的進度指示符需要從補充的一個Perl極品一個Perl系統進度指示器()命令,使用T:R:G MOD
system('make')
輸出和每行輸出到STDOUT命令,我想輸出一個點作爲進度指示器。不幸的是,我使用Term :: ReadLine :: Gnu Perl mod。
在make命令運行時,如何重定向STDOUT以捕獲和計數行數?
我想的進度指示符需要從補充的一個Perl極品一個Perl系統進度指示器()命令,使用T:R:G MOD
system('make')
輸出和每行輸出到STDOUT命令,我想輸出一個點作爲進度指示器。不幸的是,我使用Term :: ReadLine :: Gnu Perl mod。
在make命令運行時,如何重定向STDOUT以捕獲和計數行數?
#!/usr/bin/perl
my $command = "make";
open (my $cmd, "$command |");
while(<$cmd>){
print ".";
}
print "\n";
make >& >(while read f; do echo -n .; done; echo)
顯然這是一個shell解決方案,但點作爲進度指示器是一個點。
你當然可以在那裏貼一個發球臺,以便在發生問題時保存一份文件的副本。
既然你似乎並不喜歡(既不upvoted或接受)用於一些無法解釋的原因殼溶液,這裏是一個單純的Perl之一:
if (open(X,"make|")) { local($|)=1; while(<X>) { print "."; } close(X); print "\n";}
您也可以找到[期限:: ProgressBar](http://search.cpan.org/perldoc/Term::ProgressBar)的使用。 – Ether 2011-05-19 00:37:36