将变量设置为数组中的随机项

Jul*_*iet 4 shell-script

在 bash 中,我有一个包含链接列表的数组,例如

http://xkcd.com/archive
http://what-if.xkcd.com/
http://blag.xkcd.com/
http://store.xkcd.com/
Run Code Online (Sandbox Code Playgroud)

我还有一个名为 $URL 的变量。我想将变量 $URL 设置为列表中的随机项目。

ado*_*nis 6

您可以使用RANDOMbash 定义的变量:

URL=${URLLIST[ $(( RANDOM % ${#URLLIST[@]} )) ] }
Run Code Online (Sandbox Code Playgroud)

其中 URLLIST 是包含您的 url 的数组:

URLLIST=( \
    "http://xkcd.com/archive" \
    "http://what-if.xkcd.com/" \
    "http://blag.xkcd.com/" \
    "http://store.xkcd.com/" \
)
Run Code Online (Sandbox Code Playgroud)