Установка nginx на redhat - ошибка отсутствия libpcre.so.0

Этот небольшой сценарий оболочки будет перебирать каждый файл в текущем каталоге и сравнивать его отметку времени последнего изменения с диапазоном, созданным при запуске и end отметки времени (здесь 10 октября). Соответствующие файлы добавляются в массив files , и если в массиве есть какие-либо файлы, он вызывает для них convert . Измените -gt 0 на -gt 1 , если вы хотите иметь как минимум два файла (или больше).

Обратите внимание, что время создания обычно не сохраняется в атрибутах файла (Unix), поэтому этот метод можно обмануть простым касанием 1476158400.jpg , которое заставит старый файл выглядеть новым. См. Ниже второй вариант.

#!/usr/bin/env bash

start=$(date +%s -d 'Oct 10 2016')
end=$(date +%s -d 'Oct 11 2016')

files=()
for f in *
do
  d=$(stat -c%Z "$f")
  [[ $d -ge $start ]] && [[ $d -le $end ]] && files+=("$f")
done

[[ ${#files[*]} -gt 0 ]] && convert -delay 10 -loop 0 "${files[*]}" animation.gif

В качестве альтернативы, если имена файлов сами по себе кодируют метку времени создания, вы можете использовать цикл грубой силы, чтобы найти их:

start=$(date +%s -d 'Oct 10 2016')
end=$(date +%s -d 'Oct 11 2016')
files=()
for((i=start;i<=end;i++)); do [[ -f "${i}.jpg" ]] && files+=("${i}.jpg"); done
[[ ${#files[*]} -gt 0 ]] && convert -delay 10 -loop 0 "${files[*]}" animation.gif
2
21.03.2017, 22:34
1 ответ

Если вы используете RHEL/CentOS 7, Вы, вероятно, захотите 7 пакетов по адресу http://nginx.org/packages/rhel/7/x86_64/RPMS/, не те, что для RHEL 6.

6
27.01.2020, 21:53

Теги

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