how does a while read loop work in bash?
<p><a href="https://github.com/ashishvshenoy/Simple_Bash_Crawler" rel="nofollow">This is a crawler from GitHub</a> that I am to implement on myself but am unable to read the bash since am a novice. Can this be explained in answer </p>

<pre><code>#!/bin/bash

# Create an array files that contains list of filenames
files=($(&lt; url.txt))
cities=($(&lt; city.txt))
url="http://www.grotal.com/"
citycodes=($(&lt;citycode.txt))

# Read through the url.txt file and execute wget command for every filename
while IFS='=| ' read -r param uri; do
    for file in "${files[@]}"; do
        for city in "${cities[@]}"; do
            mkdir "${city}"
            mkdir "${city}/${file}"
            wget -O "${city}/${file}/${file}${citycodes[@]}" "${uri}${url}${city}/${file}-${citycodes[@]}/"
        done
    done
done &lt; url.txt
</code></pre>

<p>specifically these (even if u choose to downvote...)</p>

<pre><code>while IFS='=| ' read -r param uri;
</code></pre>

<p>and then this:</p>

<pre><code>done &lt; url.txt
</code></pre>