Общесистемная команда для резервного копирования определенного каталога

Общесистемная команда для резервного копирования определенного каталога

После переписывания части кода, над которым я некоторое время работал, как раз перед тем, как заняться резервным копированием всего, я ищу способ выработать привычку делать резервные копии целых каталогов с помощью всего лишь сочетания клавиш, например, инстинктивного нажатия клавиши « Ctrl+ S» каждые 30 секунд при работе над чем-то кропотливым.

Пример: работая над проектом с каталогами и подкаталогами, нажмите команду на клавиатуре, чтобы создать его резервную копию в отдельном месте (либо в отдельном разделе на том же диске, либо на совершенно другом диске).

Наконец, оба

sh -c 'rsync -azh home/username/Documents home/username/Doc_Backup'

и

sh -c 'rsync -azh ~/Documents ~/Doc_Backup'

Мне помогло (НастройкиКлавиатура+).

В конечном итоге я написал скрипт оболочки для копирования нескольких каталогов и их окончательного рекурсивного архивирования:

#!/bin/sh
rsync -azh '/home/user_name/Documents/ex1'
rsync -azh '/home/user_name/Documents/ex2'
zip -r '/home/user_name/Doc_Backup/Backup.zip' '/home/user_name/Doc_Backup/Backup'
rm -rf '/home/user_name/Doc_Backup/Backup'

решение1

Это можно сделать, создав пользовательскую горячую клавишу.

Откройте Control Center, щелкните на Keyboard, затем щелкните shortcutsвкладку. Щелкните add shortcut. Введите имя, например "Backup work". Затем для команды введите:

sh -c 'rsync -azh ~/my/work/folder /path/to/backup/folder'

Нажмите «Добавить», затем нажмите «Новый ярлык», чтобы добавить комбинацию клавиш для ее активации. Выберите комбинацию, которая не используется вашей программой или системой. Примечание: некоторые рабочие столы могут потребовать от вас добавить комбинацию клавиш перед добавлением ярлыка.

Объяснение команды

rsync— это программное обеспечение для синхронизации файлов. Первое выполнение может занять некоторое время, так как оно должно скопировать все файлы. Но во время последующих запусков оно ищет изменения и копирует их.

  • -aсоздает рекурсивный (копирует подкаталоги) архив, который сохраняет владельца, разрешения и временную метку.
  • -zсжимает данные файла для отправки.
  • -hпечатает числа в удобном для чтения формате.

Таким образом, эта команда копирует файлы и подпапки из /my/work/folderв /path/to/backup/folder, сохраняя владельца, разрешения и временные метки, а также сжимает данные файла.

ПРИМЕЧАНИЕ: Я предположил, что рабочая папка находится в вашем домашнем каталоге, поэтому добавил ~. Если ее нет в вашей домашней папке, укажите абсолютный путь к рабочей папке.

Связанный контент