웹 서버의 디렉토리 목록과 동기화


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.


도움이되어 다행입니다. 질문을 해결하는 데 가장 도움이되었다고 생각되는 대답을 받아 들일 수 있습니까?
George 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-나는 실제로 대신 lftpmirror명령을 사용합니다.
gogators
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.