jq объединить значения одного и того же ключа в массив?

duplicity умеет исключать каталоги

duplicity --exclude=/dir/somedir/someotherdir/dontbackup...other options...

(это будет выполняться для резервного копирования всего /dirза один раз)

Если вам нужно сделать отдельную резервную копию для каждого из подкаталогов /dir, прежде всего убедитесь, что вы сопоставляете подкаталоги с помощью шаблона /dir/*/, затем проверьте имя файла каталога на соответствие тем, которые вы хотите избежать:

for vol in /dir/*/; do
    case $vol in
        */somedirectory/)    continue ;;
        */someotherdirtory/) continue ;;
    esac

    volume=$( basename "$vol" )

    duplicity...
done

или,

for vol in /dir/*/; do
    volume=$( basename "$vol" )

    case $volume in
        somedirectory)    continue ;;
        someotherdirtory) continue ;;
    esac

    duplicity...
done

или,

for vol in /dir/*/; do
    volume=$( basename "$vol" )

    case $volume in
        somedirectory|someotherdirectory|more here)    continue ;;
    esac

    duplicity...
done

Или, с расширенным шаблоном подстановки вbash:

shopt -s extglob

for vol in /dir/!(somedirectory|someotherdirectory|...)/
    volume=$( basename "$vol" )
    duplicity...
done
3
09.08.2021, 15:47
0 ответов

Теги

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