Я просмотрел настройки Gnome и обнаружил следующее:
Перейдите в «Настройки» → «Сеть Bluetooth» → «Выключить»
Вуаля! Это сногсшибательное предложение немедленно исчезло.
venv /
необходимо исключить перед * /
включено:
rsync -avz --exclude='venv/' --include='*/' --include='*.py' --exclude='*' /tmp/src/ /tmp/dest/
Тонкость заключается в том, что rsync
обрабатывает правила по порядку, и первое правило сопоставления побеждает. Итак, если - include = '* /'
стоит перед - exclude = 'venv /'
, тогда каталог venv /
включен ] - include = '* /'
и правило исключения никогда не используется.
Зачем нам
- include = '* /'
и- exclude = '*'
? Почему недостаточно- exclude = venv / --include = '*. Py'
?
По умолчанию включаются файлы / каталоги. Итак, рассмотрим:
rsync -avz --exclude='venv/' --include='*.py' source target
Это будет включать все, кроме файлов или каталогов в venv /
. Однако вам нужны только файлы .py
. Это означает, что мы должны явно исключить другие файлы с помощью - exclude = '*'
.
- exclude = '*'
исключает как файлы, так и каталоги. Итак, если мы укажем - exclude = '*'
, тогда все каталоги будут исключены, и будут найдены только файлы .py
в корневом каталоге. Файлы .py
в подкаталогах никогда не будут найдены, потому что rsync
не просматривает исключенные каталоги. Таким образом, если у нас есть - exclude = '*'
, нам нужно поставить перед ним - include = '* /'
, чтобы обеспечить исследование содержимого всех каталогов.