5 ms·
Go is great for stuff like this, especially when part of an actual system. That said, if this was just an adhoc job (to figure out which domains point to a spe
by hannibalhorn 14y ago
Go is great for stuff like this, especially when part of an actual system.
That said, if this was just an adhoc job (to figure out which domains point to a specific IP address) you can just use "xargs -P" or GNU parallel and it becomes a pretty basic shell script, along the lines of: cat domains.txt | xargs -P 1000 -n 1 host
- mistermcgruff 14y agoxargs -P is a godsend for one-off jobs needing parallelism
- skeltoac 14y agoUntil last week I didn't know that xargs could invoke commands in parallel. xargs -n1 -P8 dig A <hosts.txt | grep -v ';' | grep $TARGET_IP | sed 's/\.\s.*//' >hosts-matched.txt
- scurry 14y agoSo what's the difference between xargs and parallel? I thought the point of parallel was that it was xargs with the addition of running things in parallel. But if xargs can do that already, is there any reason to use one over the other?
- prodigal_erik 14y agoFor what it's worth, GNU Parallel seems to be fairly new; at work I have an ubuntu distro from this year and it's not in the package repo yet. xargs is POSIX so you can expect it everywhere, though no parallel option is specified (merely encouraged).
- eggoa 14y agoIt's mostly about how they handle special characters. http://www.gnu.org/software/parallel/man.html#differences_between_xargs_and_gnu_parallel http://www.gnu.org/software/parallel/man.html#differences_be...
- hannibalhorn 14y agoIn addition to the above, it's worth nothing that parallel also supports running the jobs on multiple remote systems via ssh, giving you an easy way to take advantage of a whole cluster.
- skeltoac 14y agoxargs is already in your path.