
Dropbox Uploader: Bash script to upload, download, list, delete from Dropbox - shawndumas
https://github.com/andreafabrizi/Dropbox-Uploader
======
derefr
The one tool I constantly wish for is something like Hyperdesktop
([http://gethyperdesktop.com/](http://gethyperdesktop.com/)) 's entry on the
Windows "Send To..." menu: something that takes a file on your drive, pushes
it anonymously to a file-hosting site (where it'll expire as soon as people
stop looking at it for a while), and then puts a link _directly to the file_
on your clipboard. But, you know, for all file-types, not just images.

I _can_ currently do this using Dropbox, but it's rather a hassle; the
quickest method I've found is to use the web client[1], navigate to my Public
folder, drop a file onto it, wait for it to upload, then right-click -> Copy
Public Link.

Making that one step would be wonderful. Making the link a "promise"[2], so I
don't have to do synchronous clipboard gymnastics when I'm trying to get
multiple links at a time, would be even better.

Droplr ([https://droplr.com/hello](https://droplr.com/hello)) is pretty
similar to all this--but it doesn't do direct links, so my most common usage-
pattern for it (treating it as an "I need a CDN to show people this
image/audio/video for the next 30 seconds or so, then it can disappear"
service) is mooted. Dropbox also changed their service to remove Public
folders for new users, with the "shared files" in its place having the same
wrapper+HTML embedded file design.

Temporary hotlinking of my own content is important; I'm willing to pay for
it!

\---

[1] The Dropbox native client's uploading thread is optimized for background
"forget about it, it'll just be magically synced later" processing, not
synchronous use. The web client lets you upload as fast as your web-browser
can manage.

[2] A "promise" link would be something like--if the file hasn't finished
uploading yet, figure out whether the User Agent is a human or a script/bot.
If it's a script/bot, just let their connection sit open until the file
finishes (they won't mind.) If the user-agent is human, however, immediately
return a 408 (Timeout) error _with HTML body content_ showing a spinner.
Estimate time-to-completion plus a little bit, and put that time into an HTTP
"Refresh" header. (Remember those?)

~~~
abemassry
check out [https://wsend.net](https://wsend.net) I just launched it and it
might be what you're looking for. It is anonymous for small files, but you can
purchase an account if you'd like to support the service. I would greatly
appreciate any feedback and or purchasing of an account. Thanks!

~~~
unknownian
I know you want to make money, but consider making a self-hosted version, you
could even charge for it.

~~~
jmathai
From my experience (building a SaaS product for consumers which can be self
installed) it's not worth the hassle and most people who claim they'd pay
actually don't.

It seems that the best way to get people to pay for something is to make it a
requirement (to use the service or a set of features).

~~~
unknownian
Alright, but I'd just use some free software alternative on my server.

~~~
jmathai
That supports my statement. People will usually go free if given the option.

What I'm building is free, it is Apache2 licensed. The fact is that the self
install userbase just isn't that monetizable. So the cost of supporting them
is a net negative.

We do it but it is not our first, second or even third priority as a company.

------
ape4

      > ./dropbox_uploader.sh COMMAND [PARAMETERS]...
      >
      > [%%]: Required param 
      > <%%>: Optional param
    

Doesn't square brackets usually mean optional.

------
teach
This is really cool.

But my 80% case is just installing Dropbox headless on a server. Then I can
use 'ls', 'cp' and 'rm'.

~~~
delinka
I came here wondering why anyone would want this instead of just installing
the client. Then I realized this script would prevent needing to keep another
copy of your library on your system. Clever!

------
pacoverdi
I wanted to do the same exact thing except in a browser:

1\. fire up a JS-based shell

2\. implement basic commands like mkdir, cd, ls, rm, touch etc. (using HTML5
FileSystem API)

3\. implement extra command 'edit' that fires up an Ace session on target file

4\. allow to mount Google Drive folder via JS API

5\. allow to mount Dropbox folder via JS API

I did 1-4 and found out that Google Drive was not a good candidate for this
project (too many files of unexploitable format + no real tree-like
structure).

Then I lost interest and motivation. Should have inverted 4. and 5 :-/

Please, someone without a demanding day job and/or children, implement
something like this! It would be a perfect companion to a Chromebook
(offline).

------
christiangenco
This is awesome! I've been meaning to build something like this for my Dropbox
anonymous upload site, [http://dbinbox.com](http://dbinbox.com) (shameless
self plug). Would be super nice to be able to upload stack traces or log tails
as a text file to a Dropbox account without worrying about Auth stuff.

------
juanuys
Your Bash + Dropbox combo inspired me to clean up my 1Password hack I've used
for the past couple of years and put it online:

[https://github.com/opyate/1Bashword](https://github.com/opyate/1Bashword)

------
kleiba
I'm not a dropbox user, but I've always imagined you could simply mount your
dropbox as a file system?! I'm surprised that that doesn't seem to be the
case.

~~~
VLM
Yeah, I have that set up and ~/Dropbox works pretty well.

One big place the docs fall down is explaining how it talks to multiple
dropbox accounts. Or how it authenticates to any account at all. I'm not
nearly as interested in uploading to one dropbox account as 50, or 50K.

The usage case is probably something like an ebook delivery service where you
release edition 3 of your "learn trendy language in a ridiculously short
amount of time" so you run a script and all 100K previous buyers magically
have ebook_version_3.pdf magically appear in their dropbox. There are ebook
publishers doing this now. Like Pragmatic. I would imagine they have a tool
vaguely like this in their backend system. Or teams of hundreds of bored
interns doing it all by hand. Perhaps there's a completely different API for
.com bulk uploading. Hopefully we never get Dropbox spam delivery.

------
koevet
This tool has been around for a while. All my AWS images sport it, I found it
very useful to quickly move files to my computer whenever I need to. Very
reliable.

------
mostafah
This is the perfect tool for a simple and free backup solution for servers for
configuration files, logs, and even encrypted database dumps.

~~~
dewiz
in the free account files get deleted (see docs) so I would suggest not to use
it as a backup system. Also, from same docs, the intended use is sending
files, becareful with different use cases ;)

------
BuddhaSource
Please explain to a layman.

Does it mean that I can get a user to upload 500mb file irrespective of if
user has dropbox or not?

Kind of like what filepicker.io helps us do?

