使用转换

时间:2016-06-17 19:46:09

标签: shell unix imagemagick png imagemagick-convert

我需要在png图片上添加标签,我还需要执行命令替换以从文件中获取数字。

我有类似

的东西
convert image.png  -background red  label:'input + `grep max numbers.txt | head -n 1 | awk '{print 2}'`' -gravity Center -append

但是我对转换的理解非常有限,我下载它只是为了让我能做一个命令

感谢您

1 个答案:

答案 0 :(得分:1)

我怀疑你需要这样的东西:

convert -size 100x100 xc:red label:"input + $(awk '/max/{print $2; exit}' numbers.txt)" -gravity center -append result.png

enter image description here

您需要将label:部分放在双引号(而不是单引号)中,以便shell扩展并执行它。您不需要grephead以及awk。单独的awk能够找到第一次出现的max,然后打印第二个字段并在找到任何其他实例之前退出。

我认为numbers.txt看起来像这样:

a 34
max 32
max 33