txt,超过30000条记录。所有记录都是一个行,是这样的IP:
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.4
192.168.0.5
192.168.0.6
192.168.0.7
192.168.0.8
192.168.0.9
192.168.0.10
我读取了bash脚本中的每一行,需要运行如下所示的curl:
while IFS= read -r line || [[ -n "$line" ]]; do
#check_site "$line"
resp=$(curl -i -m1 http://$line 2>&1)
echo "$resp" | grep -Eo "$ok" > /dev/null
if [ $? -ne 0 ]; then
#echo -e "failed: $line" >> "${logfile}"
echo -e "Command: curl -i -m1 http://$line 2>&1" >> "${outfile}"
echo -e "failed: $line:\n\n \"$resp\"\n\n" >> "${outfile}"
echo "$line" >> "${faillog}"
fi
done < "${FILE}"
是否有方法可以在我的文件中同时运行多行以减少执行时间?
3条答案
按热度按时间c9x0cxw01#
Xargs就可以了。维基百科
lyfkaqu12#
本文描述了解决并行执行的方法,它可以帮助您:Parallel execution in Bash
文章中的示例:
gdrx4gfi3#
我用这样的方法求解多进程: