sh bash脚本运行循环以从文件中读取随机URL和用户代理,并使用cURL运行请求。这可以从任何系统运行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh bash脚本运行循环以从文件中读取随机URL和用户代理,并使用cURL运行请求。这可以从任何系统运行相关的知识,希望对你有一定的参考价值。

#!/bin/bash
## Warm Up script with Curl ##
# GIST https://gist.github.com/armsultan/e07b8737cd6cee28884a7a7d5372a034

# Mac users need shuf, install it with brew:
# 'brew install coreutils'
# shuf is gshuf on MAC. To use 'shuf', create an alias:
shuffle='gshuf'
# On Linux use shuf, comment line above and uncomment line below:
# shuffle='shuf'

# Requirements:
# Text File with Valid User-Agents, one per line in a file user-agents.txt
# Text File with Valid URLs, one per line in a file url-list.txt

#counter
i=1

# This runs a endless While loop. Hit Crtl - C to stop
trap "exit" INT

while :
do

        # Random User-Agent from File
        browserUA="$($shuffle -n 1 user-agents.txt)"

        # Random URL from File
        url="$($shuffle -n 1 url-list.txt)"
        #The $url contains a \r (CR) at the end (0d). Remove it with
        url=${url%$'\r'}

        # Print Test Parameters
        printf "RUN:$i\nURL = $url\nUA = $browserUA\n\n"
        Printf "Hit Ctrl+C to Stop\n\n"

        # Curl
        command="curl -s -A '"$browserUA"' '"$url"' > /dev/null"
        eval $command
        let i++

done

以上是关于sh bash脚本运行循环以从文件中读取随机URL和用户代理,并使用cURL运行请求。这可以从任何系统运行的主要内容,如果未能解决你的问题,请参考以下文章

While 循环在 Bash 的第一行之后停止读取

如何在 Alpine Docker 容器中运行 Bash 脚本?

inotifywait 未在 bash 脚本中执行 while 循环

使用for循环bash脚本逐行读取文件[重复]

Linux里面bash是啥?

将我的 bash 脚本变成守护进程的选项