Сбой rsync при обнаружении новых файлов и каталогов

Поскольку у вас есть имена пакетов, вы можете просто сохранить их в простой строковой переменной, если хотите использовать стандартную оболочку. Как минимум в соответствии с руководствами Debian , имена пакетов могут содержать только символы -+.:~a-z0-9A-Z, ни один из которых не является символом подстановки или пробелом.

Так что все должно быть в порядке:

#!/bin/sh
packages="curl git htop..."
IFS=" "                           # make sure there's nothing weird here
apt --yes install $packages       # no quotes!

Если вы параноик, добавьте set -fв начало, чтобы отключить подстановку имени файла. Это оставило бы только пробелы как проблему, но я не думаю, что какая-либо разумная система допустила бы пробелы в именах пакетов.

0
17.03.2020, 23:02
1 ответ

Выяснилось, что в моем сценарии была глупая ошибка, не связанная с этим. Файлы все время были в актуальном состоянии, скрипт просто не копировал их туда, где я думал.

В какой-то момент при изменении скрипта я, должно быть, случайно удалил косую черту в конце исходного пути. Это означает, что скрипт изменил поведение с копирования в /totembackup/totemdocдля копирования в /totembackup/totemdoc/Documents. Я никогда не замечал этот новый каталог Documentsпри просмотре /totembackup/totemdoc, чтобы проверить, работают ли резервные копии.

Восстановление исходного пути к/home/stefan/Documents/(обратите внимание, что косая черта в конце )вернула поведение сценария к тому, что я ожидал.

1
28.04.2021, 23:20

Теги

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