У меня немного сложный вопрос, надеюсь, я смогу выразить его в понятной форме.
У меня есть скрипт bash, который создает аргументы для параметров командной строки.
мой сценарий
./align_v1.1 reference.tif -te -tr -t_srs
произвести (внутренним эхом) следующую строку
-te -7575475.504 -2950763.205 -6304972.004 -2027871.240 -tr 1110.579983028509332 -1110.579983028509332 -t_srs '+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs '
эту строку можно использовать как параметры командной строки
gdalwarp -overwrite -te -7575475.504 -2950763.205 -6304972.004 -2027871.240 -tr 1110.579983028509332 -1110.579983028509332 -t_srs '+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs ' input.tif output.tif
поэтому я должен иметь возможность передать ту же строку следующим образом
gdalwarp -overwrite $(./align_v1.1 reference.tif -te -tr -t_srs) input.tif output.tif
но я получаю следующую ОШИБКУ
ERROR 1: Translating source or target SRS failed:
'+proj=sinu
мне кажется, что gdalwarp не видит ведущую '
как кавычку, когда она идет от $()
, но печатает нормально с просто эхом.
Есть ли решение заставить $()
создавать строку, которая не будет останавливаться после '+proj=sinu
or
Есть ли какое-либо решение, чтобы заставить $()
создавать всю строку, которую можно передать в gdalwarp?
Я уже пробовал printf, а не эхо
#!/bin/bash -c ' ...... ' _
но я думаю это $()