Существуют различные пути, которыми можно сделать журнал. Но первое и передовая вещь - то, что на самом деле Вы хотите вставить свой журнал. Можно сделать это различными способами:
Команда мишени разделяет вывод команды так, чтобы это было видно на дисплее и также быть сохраненным в файле.
command | tee log.txt
Вышеупомянутая команда отобразит вывод к терминалу, а также это перенаправит вывод в файл log.txt
.
Команда сценария делает машинописный текст (копия) всего распечатанного на Вашем терминале:
script -a log.txt
Предположим, что у Вас есть переменные server
и dir
определенный, можно сделать
$ dir="~"
$ server="user@server.com"
$ scp $server:$dir/$(ssh $server 'ls -t $dir | head -1') .
Где Вы сначала ищете новейший файл и затем копируете его.
Примечание: Я не проверял его на надежность (например, при этом последняя запись была папкой),
scp
является немым в том смысле, что это просто вслепую копирует файлы от источника до места назначения. Если Вы захотите что-то, что это более интеллектуально о копировании файлов, то необходимо будет использовать инструмент такой как rsync
.
$ rsync -avz root@rimmer.sk:'$(find /home/rimmer/backups/ -ctime -1)' /home/rimmer/backups/
Это только скопирует файлы, которые отсутствуют или изменились из резервного каталога rimmer.sk в прошлый день (-ctime-1) к каталогу Вашего локального резервного копирования.
-ctime n
File's status was last changed n*24 hours ago. See the comments for
-atime to understand how rounding affects the interpretation of file
status change times.
Немного поздно для вечеринки, но, возможно, решение с ssh и rsync будет работа у некоторых:
source_host="yourhost.com"
source_dir="/a/dir/on/yourhost.com/"
target_dir="/the/dir/where/last_backup/will/be/placed"
last_backup=$(ssh user@${source_host} "ls -t ${source_dir} | head -1")
if [ "${last_backup}" == "" ]; then
echo "ERROR: didn't find a backup, cannot continue!"
else
echo "the last backup is: ${last_backup}"
rsync -avzh user@${source_host}:${source_dir}/${last_backup} ${target_dir}
fi
scp -r
. Корректный – slm♦ 10.07.2013, 11:06scp
доберитесь прервал его, должен будет перезапустить копирование с начала,rsync
может возобновиться от того, где это кончило. – slm♦ 10.07.2013, 11:24