Skip to content

搞英语 → 看世界

翻译英文优质信息和名人推特

Menu
  • 首页
  • 作者列表
  • 独立博客
  • 专业媒体
  • 名人推特
  • 邮件列表
  • 关于本站
Menu

卷曲部分文件

Posted on 2024-12-30

早在 2023 年 9 月,我们就用一个相当先进且灵活的新变量系统扩展了curl 命令行工具。使用它,用户可以在以以前不可能的方式构建curl命令行时以强大的方式使用文件、环境变量等——几乎所有现有的命令行选项。

在此之前,curl 命令行已经非常强大,但这些新变量无疑又提升了几个档次。

2025 年 2 月到来

在即将发布的curl 8.12.0 版本中,我们进一步扩展了此变量支持。从现在开始,您可以分配一个变量来保存部分文件的内容。将给定文件中的字节范围获取到变量中,并在命令行中使用该变量,而不是使用整个文件。

您可以获取前几个字节并用作用户名,您可以获取文件中间的一百个字节并发布它或执行无数其他操作。

字节范围

当您分配变量时,您可以通过将;[nM]附加到文件名来要求curl 从文件中读取字节范围而不是整个字节范围。其中 N 和 M 是文件中第一个和最后一个字节的偏移量,0 是第一个字节。如果省略第二个数字,则表示直到文件末尾。

例如,从名为Secret的文件中获取前 32 个字节并将其设置为daniel的密码:

卷曲--变量“pwd@secret;[0-31]”\
--expand-user 丹尼尔: \
https://example.com/

跳过名为localfile 的文件中的前 1000 个字节,并在 POST 中发送其余部分:

卷曲-变量“上传@本地文件;[1000-]”\
--expand-post '' \
https://example.com/

具有功能

当然,您也可以将字节偏移与标准扩展函数结合起来。例如,从名为random 的文件中获取前一百个字节,并以 POST 方式将其以 Base64 编码发送:

卷曲-变量“binary@random;[0-99]”\
--expand-post '' \
https://example.com/

我希望你会喜欢它。

更新

在他的文章首次发布后,我们讨论了此功能的确切语法,并决定对其进行一些调整,以减少旧的 curl 版本在尝试新的命令行选项时被欺骗的可能性。一旦新语法落地,我将相应地更新这篇博文。

原文: https://daniel.haxx.se/blog/2024/12/30/curl-with-partial-files/

本站文章系自动翻译,站长会周期检查,如果有不当内容,请点此留言,非常感谢。
  • Abhinav
  • Abigail Pain
  • Adam Fortuna
  • Alberto Gallego
  • Alex Wlchan
  • Answer.AI
  • Arne Bahlo
  • Ben Carlson
  • Ben Kuhn
  • Bert Hubert
  • Bits about Money
  • Brian Krebs
  • ByteByteGo
  • Chip Huyen
  • Chips and Cheese
  • Christopher Butler
  • Colin Percival
  • Cool Infographics
  • Dan Sinker
  • David Walsh
  • Dmitry Dolzhenko
  • Dustin Curtis
  • Elad Gil
  • Ellie Huxtable
  • Ethan Marcotte
  • Exponential View
  • FAIL Blog
  • Founder Weekly
  • Geoffrey Huntley
  • Geoffrey Litt
  • Greg Mankiw
  • Henrique Dias
  • Hypercritical
  • IEEE Spectrum
  • Investment Talk
  • Jaz
  • Jeff Geerling
  • Jonas Hietala
  • Josh Comeau
  • Lenny Rachitsky
  • Liz Danzico
  • Lou Plummer
  • Luke Wroblewski
  • Matt Baer
  • Matt Stoller
  • Matthias Endler
  • Mert Bulan
  • Mostly metrics
  • News Letter
  • NextDraft
  • Non_Interactive
  • Not Boring
  • One Useful Thing
  • Phil Eaton
  • Product Market Fit
  • Readwise
  • ReedyBear
  • Robert Heaton
  • Ruben Schade
  • Sage Economics
  • Sam Altman
  • Sam Rose
  • selfh.st
  • Shtetl-Optimized
  • Simon schreibt
  • Slashdot
  • Small Good Things
  • Taylor Troesh
  • Telegram Blog
  • The Macro Compass
  • The Pomp Letter
  • thesephist
  • Thinking Deep & Wide
  • Tim Kellogg
  • Understanding AI
  • 英文媒体
  • 英文推特
  • 英文独立博客
©2025 搞英语 → 看世界 | Design: Newspaperly WordPress Theme