cURL自动用下划线替换功能字符?



在安装和使用cURL(特别是curl 7.86.0 (Windows) libcurl/7.86.0;之前我说的是curl 7.83.1 (Windows) libcurl/7.83.1,但我错了)下载。htm文件与/从属于一个名为gallery-dl的大众媒体文件下载程序,我遇到了一个文件命名问题,关于cURL如何处理"weird"字符。

基本上,似乎至少对于我的版本或安装cURL,当我尝试使用某种替代版本的符号,如Big Solidus斜杠而不是在文件名命令中的普通斜杠,cURL将创建。htm文件,但将用下划线替换该替代符号。我知道这不是cURL将大Solidus解释为正常斜杠的问题,因为当我尝试使用全宽Solidus斜杠时,它会以与正常/斜杠相同的方式出错。

作为一个简单的例子,尝试运行curl [url] -o C:directorytest⧸.htmcurl [url] -o "test⧸.htm"之类的东西。对我来说,它输出test_.htm

有什么我可以做的吗,有什么我可以附加到"怪异"的东西吗?字符来获得cURL以避免将它们更改为下划线?或者这与版本有关?

好的,所以OP在这里,我似乎已经找到了这个问题的解决方案,尽管解决方案的实际性质我不是很确定。Linux版本的cURL似乎没有将功能字符的替代版本(以及我发现的其他字符也在变化,如日文字符)更改为下划线的问题,而多个Windows版本则存在此问题。

我的朋友决定自己从github上现有的源代码编译一个Windows版本的cURL来运行一个调试器,由于某种原因,这个版本没有更改"奇数"字符到下划线的问题。它只是…完全没有问题。你让它创建一个文件,用大Solidus或日文字符或类似的东西,它做得很好。

我们唯一的猜测是,这是由不同的编译器产生的细微差异造成的,在官方的Windows构建中使用的编译器产生了这个问题,而其他一些编译器没有。

最新更新