使用卷曲选项在下载过程中重命名重复的文件名

时间:2018-09-06 17:43:19

标签: curl

curl是否可以选择自动更改已下载文件的文件名(如果该文件名已存在于磁盘上?)?

Wget通过在文件名的末尾附加.1,.2,.3,.4等来自动执行此操作。

卷曲示例:

$ ls -al
drwx------. 3 user    user       219 Sep  6 17:12 .
drwxr-xr-x. 3 user    user        21 May 12 18:54 ..
-rw-rw-r--. 1 user    user    147415 Sep  6 16:47 image.jpg

$ curl -O https://website/context/path/image.jpg

$ ls -al
drwx------. 3 user    user       219 Sep  6 17:12 .
drwxr-xr-x. 3 user    user        21 May 12 18:54 ..
-rw-rw-r--. 1 user    user    147415 Sep  6 17:35 image.jpg

上面的curl命令将覆盖原始的image.jpg。 curl是否有办法使新文件命名为image.jpg.1或类似名称(如wget)?

Wget示例:

$ rm image.jpg*
$ wget https://website/context/path/image.jpg

$ ls -al
drwx------. 3 user    user       219 Sep  6 17:12 .
drwxr-xr-x. 3 user    user        21 May 12 18:54 ..
-rw-rw-r--. 1 user    user    147415 Sep  6 17:42 image.jpg

$ wget https://website/context/path/image.jpg
$ wget https://website/context/path/image.jpg
$ wget https://website/context/path/image.jpg

$ ls -al
drwx------. 3 user    user       219 Sep  6 17:12 .
drwxr-xr-x. 3 user    user        21 May 12 18:54 ..
-rw-rw-r--. 1 user    user    147415 Sep  6 17:42 image.jpg
-rw-rw-r--. 1 user    user    147415 Sep  6 17:42 image.jpg.1
-rw-rw-r--. 1 user    user    147415 Sep  6 17:42 image.jpg.2
-rw-rw-r--. 1 user    user    147415 Sep  6 17:42 image.jpg.3

1 个答案:

答案 0 :(得分:2)

不。 curl没有这样的选择。如果确实需要它,通常可以通过在脚本或其他包装程序中进行检查来解决此问题。

curl的TODO中提到了此功能,它很简洁,因此可能会在将来的某个时间点添加...