سؤال

أحتاج إلى أداة مساعدة لسطر الأوامر يمكنها القيام بتحميل WebDAV (HTTP PUT).

هل كانت مفيدة؟

المحلول

الضفيرة سوف نفعل ذلك لك.

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

نصائح أخرى

ليونكس (ويندوز مع سيغوين وتثبيت) يمكنك استخدام <لأ href = "HTTP: // www.webdav.org/cadaver/ "يختلط =" noreferrer "> الجثث

والأكثر استخداما أداة سطر الأوامر HTTP يبدو أن الضفيرة ، والتي سوف تفعل PUT مع ه < وأ href = "http://curl.haxx.se/docs/manpage.html#-T" يختلط = "نوفولو noreferrer"> - T خيار . سوف تحتاج إلى فهم قدرا كبيرا من بروتوكول WebDAV أن تفعل أكثر من تحميل معها، وإن كان.

وين إس سي بي (ويندوز) يدعم WEBDAV (وWebDAVS).
 وين إس سي بي يدعم عمليات البرمجة سطر الأوامر / أيضا.

وعينة وين إس سي بي النصي لتحميل ملف عبر WEBDAV:

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"

مقدمة البرمجة مع وين إس سي بي .

هل يمكن أن يكون حتى وين إس سي بي GUI إنشاء ملف نصي لك .

(أنا مؤلف وين إس سي بي)

يحتوي على هذا نظرة عامة على قائمة thourough خادم WebDAV و عملاء.

وكنت تختار لجيفة، أو إذا كانت احتياجاتي محددة للغاية، بيثون السيناريو استخدام في PyWebDAV المكتبة.

خيار آخر هو "دافيكس"

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

لقد انفصل عن استخدامات مثل Davix-Mkdir Davix-Put وما إلى ذلك ، يمكنك تحديد تمريرات في عنوان 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:

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.First تحتاج إلى إنشاء الدلائل المتداخلة من المجلد المحلي الخاص بك (إذا كان لديك منهم) في الخادم. منذ 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'

تجدر الإشارة إلى أنه لا يمكن أن تخلق منهم في طلب واحد وفقا <لأ href = "https://greenbytes.de/tech/webdav/rfc4918.html#rfc.section.9.3.p.1" يختلط = " نوفولو noreferrer "> للمواصفات و.

<اقتباس فقرة>   

وإذا كان الطلب لخلق مجموعة / أ / ب / ج / د / مصنوع، و   / أ / ب / ج / لا وجود لها، يجب أن تفشل الطلب.

و2.Second يمكنك الاستفادة من مخرجات <لأ href = "https://www.linode.com/docs/tools-reference/tools/find-files-in-linux-using-the-command-line/ "يختلط =" نوفولو noreferrer "> تجد قذيفة القيادة لتحميله على الخادم الخاص بك باستخدام curl.

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

والقانون فوق حلقة على كل الملفات داخل دليل معين (باستخدام الاكتشاف) وإضافة الإخراج (اسم الملف مع المسار النسبي) إلى {} نائبا في عنوان الموقع من خادم الويب. لذلك يجعل طلبات متعددة (واحد لكل ملف)، ومنذ تم إنشاؤها كافة المجلدات المتداخلة مقدما - لا ينبغي أن تفشل تلك الطلبات

ونأمل أن تكون مفيدة لشخص ما.

وTelerik عازف الكمان لديه علامة التبويب "تكوين"، حيث يمكنك إنشاء الخاصة بك طلب WebDAV الخاصة حسب الطلب. مثلا PROPFIND وOPTIONS الخ.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top