มีบรรทัดคำสั่ง cURL เพื่อสร้างโฟลเดอร์ในที่เก็บข้อมูล Box.com หรือไม่


1

ฉันใช้ cURL สำเร็จในการอัปโหลดไฟล์ไปยังที่เก็บ box.com:

::   send file to Box.com
::
::   Syntax: sb.bat <username> <password> <filename> [<destination filename>]

@setlocal enabledelayedexpansion

@set OutFile=https://dav.box.com/dav/%~4
@if "%~4" equ "" set OutFile=https://dav.box.com/dav/%~nx3

@echo Sending file: "%~dpnx3" 
@echo Destination : "%OutFile%"
@set replace=%%20
@set OutFile=%OutFile: =!replace!%
curl --insecure -u %1:%2 -T "%~3" "%OutFile%"
@if %ErrorLevel% neq 0 echo CURL returned error code of %ErrorLevel%
@exit /b  %ErrorLevel%

คำสั่งล้มเหลวอย่างไรก็ตามหากโฟลเดอร์ปลายทางยังไม่มีอยู่และฉันไม่พบตัวอย่างหรือเอกสารประกอบของวิธีที่คุณอาจใช้ cURL เพื่อสร้างโฟลเดอร์ในที่จัดเก็บ Box.com

** อัพเดท **

นี่คือรูทีนแบตช์ที่เกิดขึ้นตามคำตอบที่ยอมรับจาก Anaksunaman

::   create a folder at Box.com
::
::   Syntax: cf.bat <username> <password> <pathname>    

@setlocal enabledelayedexpansion

@set NewPath=https://dav.box.com/dav/%~3

@echo Creating folder: "%NewPath%"
@set replace=%%20
@set NewPath=%NewPath: =!replace!%
@set replace=/
@set NewPath=%NewPath:\=!replace!%
curl --insecure -u %1:%2 -X MKCOL "%NewPath%"
@if %ErrorLevel% neq 0 @echo cURL returned error code of %ErrorLevel%
@exit /b  %ErrorLevel%

คำตอบ:


1

URL ที่คุณกำลังเข้าถึง ( https://dav.box.com/dav/ ) เป็น URL สำหรับการสนับสนุนWebDAVจาก Box ดังนั้นคุณควรใช้คำขอ WebDAV ปกติกับมันได้

ในกรณีของคุณในการสร้างโฟลเดอร์คุณจะใช้-X MKCOLกับ cURL (ซึ่งMKCOLเป็นวิธีการร้องขอ WebDAV เพื่อสร้าง "คอลเลกชัน" เช่นไดเรกทอรี) ลองเช่น:

curl --insecure -u %1:%2 -X MKCOL "https://dav.box.com/dav/test-folder"

ในกรณีที่%1:%2เป็นemail:passwordเช่นเดียวกับในส่วนที่เหลือของสคริปต์ของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.