У вас есть подстановочный знак(*
)в вашей командной строке, которая раскрывается оболочкой, поэтому rsync
видит, что ей был предоставлен список файлов TIFF в текущем каталоге. Например, ваша командная строка может быть расширена до этого:
rsync -r cry.tif frown.tif smile.tif /home/myusername/Documents/HR
Ни один из этих файлов TIFF не является каталогом, поэтому rsync
не имеет места, в которое он может вернуться.
С другой стороны, если вы попробуете это, rsync
может использовать возможность находить каталоги и возвращаться к ним. Я использовал флаг -a
для поддержки разрешений метаданных файла (, временных меток ). Эта попытка скопирует все файлы, а не только те, которые заканчиваются на .tif
, но если этого достаточно, это простое решение для понимания:
rsync -a. /home/myusername/Documents/HR/
Теперь последняя часть головоломки. Если вы хотите копировать только файлы TIFF (, соответствующие *.tif
), вам нужно указать rsync
, что, несмотря на то, что он может рекурсивно копировать, он должен копировать только эти файлы. Это самая сложная часть команды rsync
, но, к счастью, она почти точно процитирована в качестве примера на странице руководства (, см. man rsync
и найдите «скрыть» ):
rsync -am --include '*.tif' --filter 'hide,! */'. /home/myusername/Documents/HR/
РАБОТА В ПРОГРЕССЕ ОТВЕТ (см. ниже)
Изучив синтаксис языка Nix, я пришел к решению перенести определения пакетов в services.emacs.package
конфигурацию:
services.emacs.enable = true;
services.emacs.package = with pkgs; (emacsWithPackages (with emacsPackagesNg; [
evil
haskell-mode
intero
nix-mode
org
python-mode
]));
Хотя это сработало, всякий раз, когда я добавляю новые пакеты в этот список, это не (emacs не загружает их ). Каков правильный способ сделать это?