Как изменить ширину удаленной последовательной консоли? [дубликат]

Я вижу в вашем сценарии две очевидные проблемы. Во-первых, ** предоставляется параметром globstar , который не включен по умолчанию. Вы, вероятно, активировали его в своей интерактивной оболочке, но вам нужно сделать это и для сценария.

Тогда вы на самом деле сравниваете не $ width , а строку width . $ требуется в [] .

Последняя проблема заключается в том, что некоторые файлы, с которыми вы ее запускаете, либо повреждены, либо не являются образами. В любом случае команда identify для них не работает, поэтому $ width пусто. Простым решением было бы проверить, является ли $ width пустым ( -z "$ width" ), и сравнивать, только если это не так (! -Z "$ width" ):

Попробуйте вместо этого:

#!/bin/bash
shopt -s globstar
for file in ./**/public/uploads/*.*; do 
  width=$(identify -format "%w" "${file}")
  if [[ ! -z "$width" && "$width" -gt 800 ]]
  then
    echo "$file"
  fi
done
exit 0;
39
15.10.2017, 06:06
0 ответов

Теги

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