wget
has --limit-rate
option for limiting the download speed; from man wget
:
--limit-rate=amount
Limit the download speed to amount bytes per second. Amount may be expressed in bytes, kilobytes with the k suffix, or megabytes with
the m suffix. For example, --limit-rate=20k will limit the retrieval
rate to 20KB/s. This is useful when, for whatever reason, you don't
want Wget to consume the entire available bandwidth.
This option allows the use of decimal numbers, usually in conjunction with power suffixes; for example, --limit-rate=2.5k is a
legal value.
Note that Wget implements the limiting by sleeping the appropriate amount of time after a network read that took less time than specified
by the rate. Eventually this strategy causes the TCP transfer to slow
down to approximately the specified rate. However, it may take some
time for this balance to be achieved, so don't be surprised if
limiting the rate doesn't work well with very small files.
FWIW, curl
also has a similar --limit-rate
option for controlling both upload and download speeds. Check man curl
.