Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在ImageMagick中使用带标题的stdin_Linux_Bash_Ubuntu_Imagemagick_Imagemagick Convert - Fatal编程技术网

Linux 如何在ImageMagick中使用带标题的stdin

Linux 如何在ImageMagick中使用带标题的stdin,linux,bash,ubuntu,imagemagick,imagemagick-convert,Linux,Bash,Ubuntu,Imagemagick,Imagemagick Convert,通过阅读相关文本,我的理解是,@-符号读取标准输入的内容 因此,这应该是一种相当直接的方式来呈现Hello World printf "Hello\nWorld" | convert \ -size 1280x100 \ -background '#0000FF10' \ -density 90 \ -gravity Center \ -fill black \ -font Helvetica \ caption:@- \ test.png 在OS X 10.

通过阅读相关文本,我的理解是,
@-
符号读取标准输入的内容

因此,这应该是一种相当直接的方式来呈现Hello World

printf "Hello\nWorld" | 
convert \
  -size 1280x100 \
  -background '#0000FF10' \
  -density 90 \
  -gravity Center \
  -fill black \
  -font Helvetica \
  caption:@- \
  test.png
在OS X 10.11.5 via上,使用
convert
Version:ImageMagick 6.9.4-3 Q16 x86_64 2016-05-20可实现此功能

但是,在Ubuntu 16.04 LTS上,使用
convert
Version:ImageMagick 6.8.9-9 Q16 x86_64 2016-06-01时,相同的命令不起作用。事实上,它从字面上呈现了stdin操作符

我能在谷歌上找到的唯一一个问题是,可以追溯到2015年10月,ImageMagick 6.9.2-5测试版修补了一个类似的问题

问题:我是否没有正确地逃避它,ImageMagick中是否真的存在问题,或者我的Linux发行版是否正在使用带有该漏洞的ImageMagick的历史版本,我需要这样做


经过多次实验后很久


已解决…?在Ubuntu框上从源代码构建ImageMagick 7.0.2,上述命令按需要运行。有更好的解决方案吗?

我怀疑这是由于您的
policy.xml
文件存在差异。最近有关于IM安全漏洞的警告(),我猜您的一台服务器上的
policy.xml
文件已被设置为安全的,而不是另一台。该文件中受影响的行是:

<!-- <policy domain="path" rights="none" pattern="@*" /> -->

不需要从源代码构建。只需将@-替换为“`tee`”:


`在完成convert命令之前,tee`将首先执行'process'stdin。

上述解决方案对我不起作用。默认情况下,策略行显示为未注释。我是否推荐了上面所示的政策路线没有任何区别。事实上,在我重新编译的工作版本中,该行没有注释。不过,谢谢。对不起,马克,我没能更快地做出响应——我不得不重新创建一个新的环境来试用ImageMagick的原始版本,因为当我通过从源代码重新编译而不是使用包来“解决”问题时,我已经被唯一的工作环境“破坏”了。
 convert -debug configure logo: null: 2>&1 | grep -Ei "Searching|Loading"
printf "Hello\nWorld" | 
convert \
  -size 1280x100 \
  -background '#0000FF10' \
  -density 90 \
  -gravity Center \
  -fill black \
  -font Helvetica \
  caption:"`tee`" \
  test.png