Webサーバーのディレクトリリストと同期する


14

HTTP経由でディレクトリリストとフォルダーの同期を維持する簡単な方法はありますか?

編集

wgetのヒントをありがとう!シェルスクリプトを作成し、cronジョブとして追加しました。

remote_dirs=( "http://example.com/" "…") # Add your remote HTTP directories here
local_dirs=(  "~/examplecom" "…")

for (( i = 0 ; i < ${#local_dirs[@]} ; i++ )) do
cd "${local_dirs[$i]}"
wget -r -l1 --no-parent -A "*.pdf" -nd -nc ${remote_dirs[$i]}
done

# Explanation:
# -r            to download recursively
# -l1           to include only one directory depth
# --no-parent   to exclude parent directories
# -A "*.pdf"    to accept only .pdf files
# -nd           to prevent wget to create directories for everything
# -N            to make wget to download only new files

編集2: 後述するように、--mirror-m)を使用することもでき-r -Nます。これは、の短縮形です。


喜んでくれました。質問の解決に最も役立ったと思う答えを受け入れてもらえますか?
ジョージM

回答:


16

wget 素晴らしいツールです。

使用する wget -m http://somesite.com/directory

-m
--mirror
    Turn on options suitable for mirroring.  This option turns on
    recursion and time-stamping, sets infinite recursion depth and
    keeps FTP directory listings.  It is currently equivalent to 
    -r -N -l inf --no-remove-listing.

7

rsyncにていますが、zsyncを使用してhttpdサーバーから取得します。


インターネット上のzsyncに関するドキュメントはあまりありません。あなたがあなたの答えを詳しく説明できれば、それは本当に素晴らしいでしょう。ありがとうございました。
Behrooz

3
Behrooz-私は実際にlftpそのmirrorコマンドを代わりに使用しています。
-gogators
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.