WebDAVアップロード(HTTP PUT)を実行できるコマンドラインユーティリティが必要です。
cURL はあなたのためにそれをします。
curl -T filetoput.xml http://www.url.com/filetoput.xml
無料 WinSCP (Windowsの場合)WebDAV(およびWebDAVS)をサポートします。
WinSCPはスクリプト/コマンドライン操作もサポートしています。
WebDAV経由でファイルをアップロードするサンプルWinSCPスクリプト:
open https://[email protected]/
put file.txt /path/
exit
スクリプトをファイルに保存します(例:script.txt
)そして次のように実行します:
winscp.com /script=script.txt
また、すべてを1行に入れることもできます。
winscp.com /command "open https://[email protected]/" "put file.txt /path/" "exit"
WinSCPを使用したスクリプトの概要 で開始します。
WinSCP GUIがスクリプトファイルを生成する にすることもできます。
(私はWinSCPの著者です)
別のオプションは「davix」です
https://dmc.web.cern.ch/projects/davix/home
davix-mkdir davix-putなどのutilsが分離されています
davix-mkdir http://user:[email protected]/dir_to_create
davix-put local_file http://user:[email protected]/dir_to_create/remote_file_name
1つのファイルではなくディレクトリ全体を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 method を使用する必要があります。
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'
仕様による に従って、1つのリクエストで作成することはできません。
コレクション/ a/b/c/d /を作成する要求が行われ、/ a/b/c /が存在しない場合、要求は失敗する必要があります。
2.次に、 find Shellコマンドの出力を利用して、curl
を使用してサーバーにアップロードできます。
cd local_folder_to_upload && find . -exec curl -T {} 'http://your.server/uploads/{}' --user 'name:pwd' \;
上記のコードは、指定されたディレクトリ内のすべてのファイルをループし(findを使用)、WebサーバーのURLのプレースホルダー{}
に出力(相対パス付きのファイル名)を追加します。したがって、複数の要求(各ファイルに1つ)を作成し、すべてのネストされたフォルダーが事前に作成されているため、これらの要求は失敗しません。
それが誰かに役立つことを願っています。
KDEでKIOを使用します。
kioclient cp file.txt 'webdavs://[email protected]:443/'
Telerik Fiddlerには、「compose」タブがあり、独自のカスタマイズされたWebDAVリクエストを作成できます。例えば。 PROPFINDおよびOPTIONSなど。