Кажется, я не могу заставить rsync правильно include расширение в скобки. Скажем, в моем текущем каталоге у меня есть три файла test.py , test.sh и test.html . Я хочу передавать только файлы, заканчивающиеся на .py и .sh . Я старался:

rsync -zrv --include *.{py,sh} --exclude '*' . USER@SERVER:~

Но это только передает файл Python. Если я поменяю местами порядок в скобках, чтобы сказать {sh,py} то он только передает скрипт оболочки.

Наконец, если я сделаю

rsync -zrv --include *.sh --include *.py --exclude '*' . USER@SERVER:~

он передает оба файла все в порядке. Похоже, что это не нравится расширение скобки?

1 ответ1

1

Я подозреваю, что оболочка не совсем правильно интерпретирует, используйте следующие обозначения для предоставления нескольких расширений:

--include='*.'{py,sh}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .