1

我正在尝试使用 wget 下载一系列文件。这在 curl 中效果很好,但我喜欢通过间隔调用和在 wget 中的请求之间提供几秒钟的等待来轻松地在服务器上运行的能力。但是,我无法添加前导零,这似乎不起作用:

wget --wait=5 http://exampleurl.com/{001..102}0

上面的命令产生 404s 因为前导0并且00不显示,因此它的工作原理与{1..101}.

以防万一这是我的 High Sierra OS X (Bash 3.2) 上的旧 Bash 版本的问题,我将 Bash 升级到 5.0.7。然而即使那样,bash 括号似乎也不会像其他人报告的那样产生前导零:

echo {01..30}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

有什么建议么?

4

1 回答 1

1

尽管我声称我已经升级了 Bash,但升级后的版本实际上并没有用于命令。在询问 bash 版本时会产生:

bash --version
GNU bash, version 5.0.7(1)-release (x86_64-apple-darwin17.7.0)
...etc...

但是,正如用户赛勒斯在对我的问题的评论中建议的那样,输入:

echo "$BASH_VERSION"

表明我仍在运行 3.2。

该修复程序可以在 OS X 的终端应用程序首选项中找到。在“命令(完整路径):”下的框中显示“Shell 打开方式:”我提供了由 home brew 安装的升级版 bash 的路径. 现在打开一个新窗口显示:

echo "$BASH_VERSION"
5.0.7(1)-release
于 2019-08-09T16:47:50.340 回答