Sinkronkan dengan Daftar Direktori Server Web

14

Apakah ada cara mudah untuk menjaga folder disinkronkan dengan daftar direktori melalui HTTP?

Edit :

Terima kasih atas tipnya dengan wget! Saya membuat skrip shell dan menambahkannya sebagai tugas 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

Sunting 2: Seperti yang disebutkan di bawah ini, orang juga dapat menggunakan --mirror( -m), yang merupakan singkatan untuk -r -N.

Lenar Hoyt
sumber
Senang itu membantu. Bisakah Anda menerima jawaban yang menurut Anda paling baik membantu menyelesaikan pertanyaan Anda?
George M

Jawaban:

16

wget adalah alat yang hebat.

Menggunakan 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.
George M.
sumber
7

Suka rsync, tetapi gunakan zsync untuk mendapatkan dari server httpd.

gogator
sumber
Tidak ada banyak dokumentasi untuk zsync di Internet. Akan sangat bagus jika Anda bisa menguraikan jawaban Anda. Terima kasih.
Behrooz
3
Behrooz - Sebenarnya saya menggunakan lftpdan mirrorperintahnya sekarang.
gogator