Устранение неудовлетворенных зависимостей

Вероятно, как вы и подозревали, небольшое изменение, которое нужно исправить, попробуйте вместо этого:

if [[ !  -z  "$image"  ]]; then

Объяснение

Допустим, когда есть совпадение по exiftool и grep, тогда ваша переменная $ image содержит следующее:

abcabcabc

Но когда нет вывода, $ image содержит: (ничего)

В вашем тестовом условии вы had:

if [[ !  -z  "$image// }"  ]]; then

Итак, в первом случае bash видит следующее:

if [[ !  -z  "abcabcabc// }"  ]]; then

Но во втором случае bash видит следующее:

if [[ !  -z  "// }"  ]]; then

Тест говорит , если "//}" НЕ имеет нулевое значение, затем ... однако "//}" всегда будет не нулевым значением, это что-то, это строка, состоящая из двух косых черт, пробела и фигурной скобки. Итак, поскольку там что-то есть, что-то не с нулевым значением, поэтому часть , затем запускается, даже если у вас нет совпадений в $ image . Итак, удалив этот //} , он должен работать.

1
14.12.2017, 14:46
0 ответов

Теги

Похожие вопросы