Gibt es eine Möglichkeit zum Hochladen auf box.com Storage über die Befehlszeile?

9

Ich habe Build-Prozesse, die auf Windows-Batch-Dateien basieren. Wenn dies erfolgreich ist, möchte ich die Ergebnisse auf ein Box.com-Konto hochladen. Gibt es eine Möglichkeit, dies über die Befehlszeile zu tun? Obwohl die Drag & Drop-Oberfläche von Box.com in Ordnung ist, bleibt sie der einzige manuelle Schritt in der Kette.

rossmcm
quelle

Antworten:

7

Box unterstützt WebDAV , FTP (nur für Geschäfts- und Unternehmenskunden) und verfügt über eine API .

Sie können also entweder ein Tool verwenden, um den WebDAV-Eintrag als Laufwerk bereitzustellen, FTP über die Befehlszeile verwenden oder so etwas wie cURL installieren und die API über die Befehlszeile verwenden. Beachten Sie, dass die Hauptunterstützung für die API als über StackOverflow aufgeführt wird !

Wenn Sie Box Sync installiert haben, können Sie natürlich auch einfach Dateien in den Synchronisierungsordner kopieren.

In Windows \\dav.box.com@SSL\DavWWWRoot\davist die URN zu verbinden.

Wenn Sie in den Kommentaren eine Präferenz ausdrücken, werde ich versuchen, mehr Details hinzuzufügen, aber ich muss jetzt ausführen.

Julian Knight
quelle
Danke für deine Kommentare. Ich habe kein Geschäftskonto, daher ist WebDAV oder FTP nicht verfügbar. Ich denke, dass die Verwendung eines Paket-Sniffers, um zu sehen, was passiert, wenn ich eine Datei über die Weboberfläche hochlade, der richtige Weg ist.
Rossmcm
1
Schauen Sie sich die API an, da CURL als "Schnittstelle" aufgeführt ist, sollte es möglich sein, das zu tun, was Sie wollen.
Julian Knight
1
Vielen Dank. Habe es nur mit einer 12-MB-Datei versucht (CURL von confusedbycode.com/curl ) und es lief reibungslos unter Verwendung des Befehlszeilenbeispiels von @phobic:curl -u [email protected]:mypassword -T local_file_path https://dav.box.com/dav/remote_file_name
rossmcm
Fabelhaft! Ich habe gesehen, dass es auch eine WinCURL gibt, wenn Sie auch IE-Einstellungen verwenden müssen. In diesem Fall ist das eindeutig nicht der Fall.
Julian Knight
9

Entschuldigung, ich kann keinen Kommentar abgeben (benötigt 50 Ruf). Wie schon Julian erwähnt, können Sie WebDAV verwenden. Dies ist auch für nicht geschäftliche Konten möglich. Verwenden Sie die URL https://dav.box.com/dav . Der Ordner kann nicht in den Fenstern montiert zu sein scheint: http://www.onemetric.com.au/Documentation/Mounting-A-WebDAV-Share-Windows-7 Ich denke , das ein Web - Server - Problem. Aber Sie können locken:

curl -u [email protected]:mypassword -T local_file_path  https://dav.box.com/dav/remote_file_name
curl -u [email protected]:mypassword  https://dav.box.com/dav/remote_file_name --output download_file_path
phobisch
quelle
Um WebDAV in Windows einbinden zu können, müssen Sie das Format verwenden, das ich in meiner Antwort angegeben habe. Alternativ gibt es Tools von Drittanbietern, die Abhilfe schaffen.
Julian Knight
+1 für diese Arbeit out of the box auf Linux / OSX / * Nix-Maschinen
PressingOnAlways
Wenn es auch, sind Räume in dem remote_file_nameoder den Ordner, müssten Sie es mit kodieren %20zB: remote%20file%20name.
Rekovni
1

Ich habe PrintToBox geschrieben , um dieses Problem für Unternehmen zu lösen, die Linux / Unix verwenden. Es verwendet das Java SDK von Box, daher muss JDK 7 oder JDK 8 installiert sein. Ich habe vor, es auf Windows und Box Platform zu portieren (um App Auth / App Users zu nutzen), aber es ist noch nicht da (Hilfe gewünscht, heh).

Stephen
quelle
1

Wenn Sie mit R-Sprache gearbeitet haben, gibt es unter https://github.com/brendan-r/boxr ein nettes Paket für die Interaktion mit box über die Befehlszeile.

Samir
quelle
0

Möglicherweise ist Couchdrop hierfür hilfreich. Mit Couchdrop können Sie SCP, Rsync und SFTP to Box von Ihrem Terminal aus ausführen. Es verwendet die nativen Termianl-Anwendungen, daher müssen Sie keine neue Software installieren. Alles mit der Standard-Syntax, die Sie bereits kennen.

https://couchdrop.io

Jayden Bartram
quelle