В этом разделе показан простой сценарий bash, делающий резервную копию с пользовательского Рабочего стола на сервер резервных копий. Имя сервера резервных копий в этом сценарии присвоено переменной dest. Переменная user присваивается пользовательской учетной записи, запускающей сценарий командой whoatni и считывающей последовательность символов вывода. Команда cd меняет текущую директорию на домашнюю директорию пользователя. Логическое условие теста OR, следующее за командой cd, прекращает сценарий, если он допускает ошибку. Точка (.) указывает текущую директорию как аргумент отправителя. Для аргумента получа тель мы указываем имена пользователя и хоста для входа через ssh, за которым следует точка для определения текущей домашней директории или хост назначения.
Рассмотрим сценарий: #!/bin/bash
export RSYNC_RSH=/usr/bin/ssh dest=backupl user=$(whoami) cd |] exit 1
rsync aHPvz . "${user}@${dest}:."
Переменная среды RSYNC_RSH содержит имя оболочки, которая будет использовать утилиту rsync. Данную по умолчанию папку /usr/bin/rsh мы меняем на /usr/ bi n/ssh. В ходе работы этого сценария все файлы домашнего каталога пользователя, работающего со сценарием, копируются в его домашний каталог на сервер резервных копий. Посмотрим, как это работает у нашего взятого для примера пользователя (после входа на его Рабочий стол):
amy@deskl2:$ ./backup Password:
building file list ... 14 files to consider
newbrochure.sxw
восстановлены, поскольку они могут оыть потеряны или пользователь может нуждаться в восстановлении более старой версии. Для получения этого списка не указывайте аргументы отправитель и получатель.
Рассмотрим простой сценарий bash для получения желаемых результатов:

#!/bi n/bash dest=serverl user=S(whoami) cd || exit 1

rsync "${user}@${dest}:." | more
Запуск этого сценария дает результаты, похожие на следующие: