Shell管道不能用于挖掘

时间:2013-03-11 13:02:21

标签: bash shell pipeline dig

。 这可能是一个特别愚蠢的问题,但我是shell脚本的新手。对不起!

我正在尝试使用管道(将第一个命令的输出传递给第二个命令作为其输入参数)。

cat filename.csv | nslookup

按照我的预期运行,为文件中的每一行调用nslookup。但是,同样的事情不适合挖掘

cat filename.csv | dig

; <<>> DiG 9.8.1-P1 <<>>
;; global options: +cmd
;; connection timed out; no servers could be reached

我感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

我不确定dig是否从stdin读取。相反,

  

-f选项通过读取列表来使dig以批处理模式运行   查找从文件文件名处理的请求。该文件包含一个   查询数量,每行一个。文件中的每个条目都应该是   他们以同样的方式组织起来          将显示为使用命令行界面进行挖掘的查询。

(来自man page

请注意,您的nslookup示例符合this award(!)的条件,并且可以重写为

nslookup < filename.csv

实现同样的目标。