Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
# Take list of files to backup
wls=`$wssh -o "BatchMode yes" -q $hostadr "cd $fullpath 2> null && /bin/ls -1"`
Один из двух наиболее важных моментов. Скрипт копирования файлов создает каталоги вида YYYY/MM-YYYY/DD-MM-YYYY, где YYYY – текущий год, MM – текущий месяц, DD – текущий день. Можно было бы, конечно, создавать папки типа YYYY/MM/DD, но мне удобнее просматривать список в mc, когда видна полная дата. В переменной wls после выполнения команды будет результат команды «перейти в заданный каталог и получить список файлов в нем». Если предполагается копировать нечто другое, следует задать соответствующий путь в переменной fullpath.
Если команда завершилась аварийно, то список будет пуст, и скрипт перейдет к другому узлу из списка или завершит работу, если этот список уже кончился. Результат выполнения последней команды хранится в переменной status. Если команда выполнена успешно, то выполняется последовательный переход в каталоги: имя удаленного компьютера, YYYY, MM-YYYY, DD-MM-YYYY, например: cd myhost; cd 2004; cd 12-2004; cd 15-12-2004. Если такой каталог отсутствует, он создается с правами, заданными параметрами. Мы говорили об этом в разделе «Настройка скрипта».
# When list is empty, do nothing
# (and don't create directories)
status=$?
if [ $status -ne 0 ]; then
continue
else
# Go down the ladder
godown=$hostname; go_down
godown=$wsyear; go_down
godown=$wsmon-$wsyear; go_down
godown=$wsday-$wsmon-$wsyear; go_down
fi
Пофайловое копирование
for file in $wls
do
$scpname -q -Q $hostadr:$fullpath/$file . 2> null
status=$?
# Check on operation return code
if [ $status -ne 0 ]; then
logline="Transfer of file $file unsuccesful, return code is $status"; safe_logger