-1

テストファイルにホストのリストがあります。出力を 3 列に整理しようとしています。ホスト名と ilo-hostname で nslookup を実行し、結果を次のように列に入れたいと思います。

Hostname    IP-hostname ilo-hosntame
Host-1           FQN        FQN 
Host-2           FQN           ** server can't find Host-2: SERVFAIL

編集:私は今、このようなファイルを持っています

Hostname
IloHostname
Hotname
IloHostname
Hostname** サーバーが IloHostname を見つけられません: SERVFAIL //Ilohostname が見つからないか存在しない場合

このファイルの作成に使用したスクリプト

egrep 'Name:|SERVFAIL' list3 | awk '{sub(/Name:/,"")}; 1' | awk '{$1=$1}1' | awk -F. '{print $1}'

list3 は nslookup からの出力です

4

2 に答える 2

0

hostの代わりに使用できますnslookup。出力形式は、目的を達成するための後処理にもう少し適しています。

于 2012-08-29T14:08:25.230 に答える
0
 This perl code maybe could be useful with some modifications:

#!/usr/bin/perl
use strict;
use warnings;
while(<DATA>){
    my %table;
    print;
    my @res = qx/nslookup $_/;
    my @eres = grep {/(\w+)\:\s+(\S+)\s*/g} @res;
    #now you got it
    foreach my $r (@eres){
        if ($r =~ /Name:(.*)/) {print "$1\t"}
        if ($r =~ /Address:(.*)\n/ and not $r =~ /\#/) {print "$1\n"}
    }
}

__DATA__
www.cisco.com
www.google.com
www.yahoo.com
于 2012-08-29T15:32:41.373 に答える