通过 HTTPS 下载文件的 curl 命令

Hel*_*llo 5 linux bash https curl

我需要从https://file_path. 这是我用于此的 curl 命令:

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

小智 4

curl修改它发送到 stdout 和 stderr 的内容,具体取决于您是否通过管道传输输出、使用什么选项等...您需要发布脚本才能确切了解为什么会出现这种情况。强制将下载内容保存到特定文件中的最佳方法是使用以下-o选项:

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

根据您对脚本的处理方式,您可能还想使用该-s选项来抑制下载进度。