我有以下perl腳本,在給定輸入參數的情況下在本地工作。 鑑於我已經成功設置了ssh密鑰,我需要該腳本訪問遠程服務器以獲取相同的信息。遠程服務器上日誌文件的路徑與本地相同。遠程服務器的配置是相同的。我只需要跨多臺服務器運行,並將數據帶回到終端或文件。我需要把它放在shell腳本中嗎?在遠程服務器上使用perl腳本並將輸出帶回到本地終端或屏幕
# usage example: <this script> Jun 26 2010 <logfile>
use strict;
use warnings;
my ($mon,$day,$year) = ($ARGV[0],$ARGV[1],$ARGV[2]);
open(FH,"< $ARGV[3]") or die "can't open log file $ARGV[3]: $!\n";
while (my $line = <FH>) {
if ($line =~ /.* $mon $day \d{2}:\d{2}:\d{2} $year:.*(ERROR:|backup-date=|host=|backup-size=|backup-time=|backup-status)/) {
print $line;
}
}
謝謝格蘭特。我測試了這個。這很好用!說,我有一個主機列表,例如host1,host2,host3。什麼是一次性通過所有這些乾淨的方法? hostnames.txt: host1 host2 host3 – jdamae 2010-06-27 05:20:37
@ jaedre619 - 請參閱上面的修改 – 2010-06-27 21:51:49