curl、wget、ab

百科:

分类:HTTP客户端 - 维基百科

curl:通用型工具。

wget:专为文件下载设计的工具。

ab:压测工具,模拟并发。

curl

  • 描述:基于 libcurl 库的多功能命令行数据传输工具。(网络请求 是一种实现数据传输的具体行为或协议)
  • 用途:支持多种协议(HTTP、HTTPS、FTP、SCP、SFTP、LDAP 等),广泛用于 Web API 交互、网络请求调试、数据抓取
  • 特点
    • 支持多种请求方式(GET、POST、PUT 等)
    • 可自定义请求头、请求体
    • 支持断点续传、自动处理 Cookie、认证等高级功能
  • 常用示例
    • 下载文件:curl -CO <URL>
    • 断点续传:curl -C - <URL>
    • 发送 POST 请求:curl -X POST -d '{"key":"value"}' <URL>
    • 调试请求:curl -v <URL> (-v 显示详细的通信信息)

wget

  • 描述:是一款专为文件下载设计的工具,擅长下载大文件。
  • 用途:主要用于下载文件,支持HTTP、HTTPS、FTP 协议。
  • 特点
    • 专注下载,不涉及复杂请求
    • 支持递归下载整个目录/网站
    • 支持断点续传、自动处理 Cookie、重定向
  • 常用示例
    • 下载文件:wget <URL>
    • 断点续传:wget -c <URL>
    • 递归下载: wget -r <URL>

ab

  • 描述:(Apache Bench) 是一款 Apache 提供的命令行工具,用于 Web 服务器性能测试。
  • 用途:模拟并发访问,了解服务器在压力下的表现。
  • 特点
    • 关注 并发量与吞吐量
    • 适合快速压测
  • 常用示例:
    • 模拟 100 并发、总共 1000 请求: ab -n 1000 -c 100 <URL>