Я не смог найти точную ссылку на то, что я делаю ...Разверните внутреннюю команду переменной ``
У меня есть следующий сценарий, который не расширить переменный внутри команды:
#!/bin/bash
name="my name"
`convert -pointsize 250 -font /usr/share/fonts/truetype/msttcorefonts/impact.ttf -fill black -draw 'text 330,900 "$name"' tag.jpg name_my.jpg`
В результате получается изображение с текстом $ name вместо содержимого имени.
я на самом деле нужно читать строки из файла и RUND команды на название так мой реальный сценарий (имеет те же проблемы):
arr=(`cat names.txt`)
for ((i=0; i<${len}; i+=2));
do
`convert -pointsize 250 -font /usr/share/fonts/truetype/msttcorefonts/impact.ttf -fill black -draw 'text 330,900 "$(${arr[i]} ${arr[i+1]})"' tag.jpg name_${arr[i]}.jpg`
done
Вам не нужны обратные ссылки, чтобы запустить 'convert' в вашем примере. – chepner
Показывает, сколько времени прошло с тех пор, как я коснулся этого? :) Вот как меня научили писать Bash в uni ... Я где-то читал, что он поддерживает «Bourne Shell» ... – Shaihi