gpt4 book ai didi

linux - 如何编写批量 nslookups 脚本

转载 作者:太空宇宙 更新时间:2023-11-04 09:33:10 25 4
gpt4 key购买 nike

我有一个包含几百万个域名的列表,我想看看它们是否可用。

我首先尝试了 pywhois,但速度受到限制。因为我不需要权威的答案,所以我想我会使用 nslookup。不过,我在编写脚本时遇到了问题。

基本上,我想做的是,如果域已注册,则回显它。我得到的是 grep: find”: No such file or directory 。我认为这很简单,而且我已经关注它太久了...

#!/bin/bash
START_TIME=$SECONDS
for DOMAIN in `cat ./domains.txt`;
do
if ! nslookup $DOMAIN | grep -v “can’t find”; then
echo $DOMAIN
fi
done
echo ELAPSED_TIME=$(($SECONDS - $START_TIME))

最佳答案

如果你有数百万要检查,你可能喜欢使用 GNU Parallel 来更快地完成工作,如果你想重复做,比如并行 32 次查找,就像这样

parallel -j 32 nslookup < domains.txt | grep "^Name"

如果你想摆弄nslookup的输出,最简单的方法可能是声明一个名为lkup()的小函数,告诉GNU Parallel,然后像这样使用它

#!/bin/bash

lkup() {
if ! nslookup $1 | grep -v "can't find"; then
echo $1
fi
}

# Make lkup() function visible to GNU parallel
export -f lkup

# Check the domains in parallel
parallel -j 32 lkup < domains.txt

如果查找的顺序对您很重要,您可以将-k标志添加到parallel以保持顺序。

关于linux - 如何编写批量 nslookups 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29398702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com