linux系统下的文件下载

单线程

  • wget
1
wget -c "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"

使用代理

1
wget -e "http://127.0.0.1:1080" -c "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"
  • curl
1
curl -O -C - "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"

使用代理

1
curl -x 127.0.0.1:1080 -O -C - "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"

多线程

  • axel

n参数代表连接数

1
axel -a -n 10 "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"
  • aria2

s每个文件最多连接数(默认5) k每个连接分片单次最多下载大小(默认20) x每个服务器最多连接数(默认1) j多个下载任务时同时下载的任务数限制(默认5)

1
aria2c --file-allocation=none -c -s10 -x10 -k5M "https://releases.ubuntu.com/bionic/ubuntu-18.04.5-live-server-amd64.iso"

其他

通过环境变量使用代理

1
2
3
4
5
6
export http_proxy="http://127.0.0.1:1080"
export all_proxy=$http_proxy
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export no_proxy="localhost,.example.com,128.0.0.1,10.96.0.0/12,192.168.99.0/24,192.168.39.0/24"

  • apt使用代理
1
2
3
echo 'Acquire::http::Proxy "http://127.0.0.1:1080";' >~/.apt_proxy.conf
sudo apt-get -c ~/.apt_proxy.conf update