Curl 命令通过 HTTPS 下载文件

Curl 命令通过 HTTPS 下载文件

我需要从 下载一个特定文件https://file_path。下面是我为此使用的 curl 命令:

curl --user user:password "https://file_path?raw" > location
  1. 我希望下载上述“file_path”位置的文件的实际内容,但不知何故 curl 仅返回 HTML 内容。我该如何解决这个问题?
  2. 当我从 shell 运行此命令时,它会按上述方式运行以下载 HTML 内容。但是当我从 bash 脚本中运行它时,它不会下载任何内容并返回一个空白文件。为什么它会根据运行位置表现出不同的行为?

答案1

curl根据您是否通过管道输出、使用什么选项等修改发送到 stdout 和 stderr 的内容...您需要发布脚本才能确切了解此处发生这种情况的原因。强制将下载的内容放入特定文件的最佳方法是使用以下选项-o

curl --user user:password -o output_file "https://file_path?raw"

根据您对脚本的操作,您可能还想使用选项-s来抑制下载进程。

相关内容