0

我正在将客户的 WHM / cPanel 帐户迁移到新服务器,但是他在服务器上托管了许多站点,我需要检索他们的名称服务器。

我想创建一个 bash 脚本来解析文件(每个域在单独的行上),执行digand whois,找到名称服务器和 IP,然后将域及其名称服务器输出到另一个文件。

我不太擅长 bash,但我找到并编辑了这个脚本 - 但它似乎根本不想工作。如果有人有任何见解,那就太好了。谢谢!

#!/bin/bash
# dig $line +short >> ip address 
# whois $line >> Lists full details including the name servers 
# whois $line | grep "Name Server" | cut -d ":" -f 2 | sed 's/ //' | 
# sed -e :a -e '$!N;s/ \n/,/;ta'`  
while read inputfile 
do 
echo $domain  
ipaddress=`dig $domain +short` 
nameserver=`whois $domain | grep "Name Server" | cut -d ":" -f 2 |    
sed 's/ //' | sed -e :a -e '$!N;s/ \n/,/;ta'` 
echo -e "$domain,$ipaddress,$nameserver" >> outputfile
done
4

1 回答 1

1

这将输出给定文件中所有可能的域 A 和 NS 记录:

#!/bin/bash
while read domain 
do 

for a in `dig $domain a +short`
do
    ipaddress="$ipaddress$a,"
done

for ns in `dig $domain ns +short`
do
    nameserver="$nameserver$ns,"
done 
echo "$domain,$ipaddress,$nameserver"
done

用法

假设脚本被命名为解析器并且文件被输入。做

cat input | ./resolver

(某些域有多个 IP 地址和名称服务器)

于 2015-04-14T23:58:37.373 回答