Команда scp -r source user@target:dest
обойдет все подкаталоги источника и скопирует их.
Однако scp
ведет себя как cp
и всегда файлы копий, даже если это - то же и на источнике и на месте назначения. [Посмотрите здесь для обходного решения.]
Поскольку это - статический веб-сайт, Вы, скорее всего, только делаете обновления, не воссоздавая все это, таким образом, Вы, вероятно, найдете, что вещи проходят быстрее, если Вы используете rsync
по ssh вместо scp
. Вероятно, что-то как
rsync -av -e ssh source user@target:dest
... начать. Если бы Вы делаете это через LAN, я лично использовал бы опции -avW
вместо этого для rsync
.
Rsync также дает Вам способность копировать удаления в Вашем источнике; таким образом, при удалении файла из дерева можно работать rsync
как выше, и включают флаг --delete
и это удалит тот же файл из целевой стороны.
Вы заново изобретаете колесо. Попробуйте следующее:
sed -e 's/\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\).*$/\1/' -e t -e d access.log | sort | uniq -c