![Curl 命令通过 HTTPS 下载文件](https://linux22.com/image/1492280/Curl%20%E5%91%BD%E4%BB%A4%E9%80%9A%E8%BF%87%20HTTPS%20%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6.png)
我需要从 下载一个特定文件https://file_path
。下面是我为此使用的 curl 命令:
curl --user user:password "https://file_path?raw" > location
- 我希望下载上述“file_path”位置的文件的实际内容,但不知何故 curl 仅返回 HTML 内容。我该如何解决这个问题?
- 当我从 shell 运行此命令时,它会按上述方式运行以下载 HTML 内容。但是当我从 bash 脚本中运行它时,它不会下载任何内容并返回一个空白文件。为什么它会根据运行位置表现出不同的行为?
答案1
curl
根据您是否通过管道输出、使用什么选项等修改发送到 stdout 和 stderr 的内容...您需要发布脚本才能确切了解此处发生这种情况的原因。强制将下载的内容放入特定文件的最佳方法是使用以下选项-o
:
curl --user user:password -o output_file "https://file_path?raw"
根据您对脚本的操作,您可能还想使用选项-s
来抑制下载进程。