-1

Imagemagick 提供了这个identify工具,它可以完美地满足我的需要。我在 Ubuntu 上使用它,版本:ImageMagick 6.9.7-4 Q16 x86_64 20170114。

这是我的使用方法:

$ identify "ftp://SERVERNAME:PASSWORD@HOST/DIRECTORY/FILE.pdf"

但是当目录或文件的名称中有空格时,我会收到一个错误,就好像它没有找到该文件一样。

有什么解决办法吗?

注意:我尝试过使用\、或空格之前\\,但它不能解决这个问题。%20^

Error : "identify-im6.q16: no decode delegate for this image format `' @ error/constitute.c/ReadImage/504. no data returned"

(就像我没有写正确的文件名一样的消息)。

4

1 回答 1

0

您的问题可能是因为您使用了双引号。尝试在 FTP 服务器的 URL 周围使用单引号。例如,这里我使用的是另一个 SO Q&A 中提到的免费 FTP 服务,标题为:Is there a Public FTP server to test upload and download? .

$ identify 'ftp://demo:password@test.rebex.net/pub/example/WinFormClient.png'
ftp://demo:password@test.rebex.net/pub/example/WinFormClient.png=>WinFormClient.png PNG 800x700 800x700+0+0 8-bit sRGB 80000B 0.000u 0:00.000

我能够找到另一个允许您上传文件的站点https://dlptest.com/ftp-test/。在使用它时,我相信这会复制您的问题:

$ identify 'ftp://dlpuser%40dlptest.com:e73jzTRTNqCN9PYAAjjn@ftp.dlptest.com/download with space.jpeg'
identify: no decode delegate for this image format `' @ error/constitute.c/ReadImage/512.
identify: no data returned `ftp://dlpuser%40dlptest.com:e73jzTRTNqCN9PYAAjjn@ftp.dlptest.com/download with space.jpeg' @ error/url.c/ReadURLImage/246.

这看起来像是 Imagemagick 处理 URL 的错误。这是我正在使用的版本:

$ identify --version
Version: ImageMagick 7.0.8-0 Q16 x86_64 2018-06-13 https://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: https://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules
Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib

无论如何,我看到您已经在 Imagemagick 论坛上询问过这个问题 -识别 ftp 和空间

于 2018-09-01T13:19:22.437 回答