一、在 Linux 系统中,可以使用以下命令行工具从网站下载文件:
- wget:
- wget安装:需要自行安装一下才会有这个功能:
yun install -y wget
- 基本下载:使用
wget
加上文件的 URL 即可下载文件到当前目录。例如,wget https://example.com/file.zip
将从https://example.com
网站下载file.zip
文件到当前工作目录。 - 指定保存文件名:使用
-O
(大写的 O)选项可以指定下载文件的保存文件名。例如,wget -O myfile.zip https://example.com/file.zip
会将下载的文件保存为myfile.zip
。 - 后台下载:使用
-b
选项可以让wget
在后台模式下下载文件,并将日志保存在当前目录的wget-log
文件中。例如,wget -b https://example.com/file.zip
。 - 断点续传:如果下载中断,可以使用
-c
选项继续从上次下载的地方恢复下载。例如,wget -c https://example.com/file.zip
。 - 限速下载:使用
--limit-rate=
选项可以限制下载速率,避免占用过多带宽。例如,wget --limit-rate=100k https://example.com/file.zip
表示将下载速度限制在每秒 100KB。 - 递归下载:如果要下载整个网站,可以使用
-r
选项,但要注意遵守网站的使用条款和法律法规。例如,wget -r https://example.com
。 - 忽略证书验证:对于一些自签名证书或证书有问题的网站,可以使用
--no-check-certificate
选项来忽略证书验证,但这可能存在安全风险。例如,wget --no-check-certificate https://example.com/file.zip
。
- wget安装:需要自行安装一下才会有这个功能:
- curl:
- 基本下载:使用
curl
加上-o
(大写的 O)选项和目标文件名,以及文件的 URL 来下载文件。例如,curl -o myfile.zip https://example.com/file.zip
将从https://example.com
下载file.zip
并保存为myfile.zip
。如果不指定目标文件名,curl
会将文件内容打印到终端。 - 下载多个文件:可以在一个命令中指定多个 URL 来下载多个文件。例如,
curl -o file1.zip https://example.com/file1.zip -o file2.zip https://example.com/file2.zip
。 - 跟随重定向:有时链接会重定向到其他链接,使用
-L
选项可以让curl
跟随最终的链接。例如,curl -L https://example.com/file.zip
。
- 基本下载:使用
- axel:
- 高速下载:
axel
是一个支持多线程下载的工具,可以提高下载速度。使用axel
加上文件的 URL 即可下载。例如,axel https://example.com/file.zip
。 - 设置线程数:可以使用
-n
选项设置下载的线程数。例如,axel -n 10 https://example.com/file.zip
将使用 10 个线程下载文件。
- 高速下载:
二、Scp传输
scp
(Secure Copy)是一个在 Linux 和类 Unix 系统中用于在不同主机之间安全地复制文件的命令。它使用 SSH(Secure Shell)协议进行加密和身份验证,确保数据传输的安全性。
1、基本语法
scp [选项] 源文件路径 目标路径
2、传输文件的方式
(1). 从本地复制文件到远程主机:
- 例如,将本地的
file.txt
文件复制到远程主机remotehost
的/home/user/
目录下:
scp file.txt user@remotehost:/home/user/
(2). 从远程主机复制文件到本地:
- 例如,将远程主机
remotehost
上的/home/user/file.txt
文件复制到本地当前目录:
scp user@remotehost:/home/user/file.txt.
(3). 复制目录:
- 要复制整个目录,需要使用
-r
(递归)选项。 - 例如,将本地的
directory
目录复制到远程主机remotehost
的/home/user/
目录下:
scp -r directory user@remotehost:/home/user/
- 从远程主机复制目录到本地:
scp -r user@remotehost:/home/user/directory.
3、常用选项
(1). -P
(大写的 P):指定远程主机的 SSH 端口号。如果远程主机的 SSH 端口不是默认的 22 端口,可以使用这个选项指定端口号。例如:scp -P 12345 file.txt user@remotehost:/home/user/
。
(2). -C
:启用压缩传输,可以加快传输速度,特别是在网络带宽有限的情况下。例如:scp -C file.txt user@remotehost:/home/user/
。
(3). -v
:详细模式,显示详细的传输过程信息,有助于调试问题。例如:scp -v file.txt user@remotehost:/home/user/
。
(4). -i
:指定用于身份验证的私钥文件路径。如果使用非默认的私钥文件进行 SSH 连接,可以使用这个选项。例如:scp -i /path/to/private_key file.txt user@remotehost:/home/user/
。
4、注意事项
(1). scp
需要确保本地和远程主机之间可以通过 SSH 连接。如果无法连接,请检查网络连接、SSH 配置和权限等问题。
(2). 传输大文件可能需要较长时间,并且可能会占用大量网络带宽。在进行大文件传输时,要考虑网络负载和其他用户的影响。
(3). 确保你有足够的权限在源和目标位置进行文件复制操作。如果没有适当的权限,传输可能会失败
三、rz和sz
rz #上传
sz #下载
#需要先安装lrzsz软件包
yum install lrzsz -y