문제

WebDAV 업로드 (HTTP Put)을 수행 할 수있는 명령 줄 유틸리티가 필요합니다.

도움이 되었습니까?

해결책

곱슬 곱슬하다 당신을 위해 그것을 할 것입니다.

curl -T filetoput.xml http://www.url.com/filetoput.xml

다른 팁

유닉스 (및 Windows와 함께 Cygwin 설치) 사용할 수 있습니다 시체

가장 일반적으로 사용되는 명령 줄 HTTP 유틸리티는 곱슬 곱슬하다, 무엇을 할 것입니다 PUT 그것으로 -T 옵션. 그러나 업로드 이상을 수행하려면 WebDAV 프로토콜을 상당히 이해해야합니다.

무료 WinSCP (Windows 용)는 WebDAV (및 WebDavs)를 지원합니다.
WinSCP는 스크립팅/명령 줄 작업도 지원합니다.

WebDav를 통해 파일을 업로드하려면 winscp 스크립트 샘플 :

open https://user@webdav.example.com/
put file.txt /path/
exit

스크립트를 파일에 저장합니다 (예 : script.txt)) 그리고 다음과 같이 실행하십시오.

winscp.com /script=script.txt

모든 것을 한 줄에 넣을 수도 있습니다.

winscp.com /command "open https://user@webdav.example.com/" "put file.txt /path/" "exit"

시작합니다 WinSCP로 스크립팅 소개.

당신은 가질 수 있습니다 WinSCP GUI는 스크립트 파일을 생성합니다.

(저는 WinSCP의 저자입니다)

이 개요 WebDav 서버 및 클라이언트의 Thourough 목록이 포함되어 있습니다.

나는 시체를 선택하거나, 내 요구가 매우 구체적이라면, Pywebdav 도서관.

또 다른 옵션은 "Davix"입니다.

https://dmc.web.cern.ch/projects/davix/home

Davix-Mkdir Davix-Put 등과 같은 UTIL을 분리하여 URL에서 신용을 지정할 수 있습니다.

 davix-mkdir http://user:passw@example.com/dir_to_create
 davix-put local_file http://user:passw@example.com/dir_to_create/remote_file_name

KDE에서 kio를 사용하십시오 :

kioclient cp file.txt 'webdavs://user@webdav.example.com:443/'

WebDav를 통해 하나의 파일 대신 전체 디렉토리를 업로드 해야하는 경우 다음 접근 방식을 사용할 수 있습니다.

WebDav를 통해 업로드 할 로컬 폴더가 있다고 상상해보십시오.

local_folder_to_upload
│   test.txt
│   test1.txt    
│
└───nested_folder1
│   │   file1.txt
│   │   file2.txt
│   │
│   └───nested_folder2
│       │   file11.txt
│       │   file12.txt

1. 서버에서 로컬 폴더에서 중첩 디렉토리를 만들어야합니다. Webdav는 재귀 업로드를 지원하지 않으므로 별도의 단계 에서이 작업을 수행해야합니다 (당신이 사용한다면 ftp - 당신은 추가 할 것입니다 --ftp-create-dirs 이것을 할 깃발). WebDav 위에 해당 폴더를 만들려면 사용해야합니다. MKCOL 방법.

curl -X MKCOL 'http://your.server/uploads/nested_folder1' --user 'name:pwd'
curl -X MKCOL 'http://your.server/uploads/nested_folder1/nested_folder2' --user 'name:pwd'

한 번의 요청에 따라 만들 수 없습니다. 사양에.

Collection/A/B/C/D/를 작성하라는 요청이 작성되고/A/B/C/가 존재하지 않으면 요청이 실패해야합니다.

2. 세초는 출력을 활용할 수 있습니다 찾기 Shell 명령을 사용하여 서버에 업로드하려면 명령 curl.

cd local_folder_to_upload && find . -exec curl -T {} 'http://your.server/uploads/{}' --user 'name:pwd' \;

주어진 디렉토리 (찾기 사용) 내부의 모든 파일 위의 루프 위의 코드와 자리 표시 자에게 출력 (상대 경로가있는 파일 이름)을 추가합니다. {} 웹 서버의 URL에서. 따라서 여러 요청 (각 파일 당 하나)이 발생하며 모든 중첩 된 폴더가 미리 생성되었으므로 해당 요청이 실패하지 않아야합니다.

누군가에게 도움이되기를 바랍니다.

Teleric Fiddler에는 자신의 맞춤형 WebDAV 요청을 만들 수있는 "Compose"탭이 있습니다. 예를 들어 소품 및 옵션 등

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top