You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

443 lines
21 KiB

  1. <!doctype html>
  2. <!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
  3. <!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
  4. <!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
  5. <!--[if gt IE 8]><!-->
  6. <html class="no-js">
  7. <!--<![endif]-->
  8. include "includes/head.html"
  9. <body>
  10. <script>
  11. var gaKey = "{{.GAKey}}";
  12. if (gaKey != "") {
  13. (function (i, s, o, g, r, a, m) {
  14. i['GoogleAnalyticsObject'] = r;
  15. i[r] = i[r] || function () {
  16. (i[r].q = i[r].q || []).push(arguments)
  17. }, i[r].l = 1 * new Date();
  18. a = s.createElement(o),
  19. m = s.getElementsByTagName(o)[0];
  20. a.async = 1;
  21. a.src = g;
  22. m.parentNode.insertBefore(a, m)
  23. })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
  24. ga('create', gaKey, 'transfer.sh');
  25. ga('send', 'pageview');
  26. }
  27. </script>
  28. include "includes/navigation.html"
  29. <section id="home">
  30. <div class="wrapper">
  31. <h2 class="page-title">
  32. Easy file sharing from the command line</h2>
  33. <div class="row animated fadeInDown">
  34. <div id="from-terminal" class="box col-md-8 col-md-offset-2 col-xs-12">
  35. <div class="terminal-top">
  36. </div>
  37. <div id="terminal" class="terminal">
  38. <code class="code-wrapper"><span class="code-title"># Upload using cURL</span>
  39. $ curl --upload-file ./hello.txt {{.WebAddress}}hello.txt {{.WebAddress}}66nb8/hello.txt
  40. <span class="code-title"># Using the shell function</span>
  41. $ transfer hello.txt
  42. ##################################################### 100.0% {{.WebAddress}}eibhM/hello.txt
  43. </code>
  44. </div>
  45. <div id="web">
  46. <code class="code-wrapper">
  47. <span class="code-title"># Upload from web</span>
  48. Drag your files here, or <a class="browse" href="#"> click to browse.</a>
  49. </code>
  50. <input type="file" multiple="multiple" style='display: none;' />
  51. <ul class='queue'>
  52. <li>
  53. </li>
  54. </ul>
  55. <div class='all-files'>
  56. <br>
  57. <div>
  58. <span class="code-title"># Download all your files</span>
  59. <br/>
  60. <br/>
  61. <a class="download-zip btn-cta" href="#">zip</a> <a class="download-tar btn-cta" href="#">tar.gz</a>
  62. </div>
  63. </div>
  64. </div>
  65. </div>
  66. <div>
  67. <a href="#features" class="btn-cta btn-home">learn more</i> </a>
  68. </div>
  69. </div>
  70. </section>
  71. <section id="features">
  72. <div class="wrapper container">
  73. <div class="row animated fadeInDown ">
  74. <div class="col-md-3 col-xs-6">
  75. <i class="icon-terminal"></i>
  76. <h3>Made for use with shell</h3>
  77. </div>
  78. <div class="col-md-3 col-xs-6">
  79. <i class="icon-link"></i>
  80. <h3>Share files with a URL</h3>
  81. </div>
  82. <div class="col-md-3 col-xs-6">
  83. <i class="icon-database"></i>
  84. <h3>Upload up to 500 MB</h3>
  85. </div>
  86. <div class="col-md-3 col-xs-6">
  87. <i class="icon-clock"></i>
  88. <h3>Files stored for 1 day</h3>
  89. </div>
  90. </div>
  91. <div class="row animated fadeInDown">
  92. <div class="col-md-offset-3 col-md-3 col-xs-6">
  93. <i class="icon-tag"></i>
  94. <h3>For free</h3>
  95. </div>
  96. <div class="col-md-3 col-xs-6">
  97. <i class="icon-lock"></i>
  98. <h3>Encrypt your files</h3>
  99. </div>
  100. <div class="col-md-3 col-xs-6">
  101. <i class="icon-lock"></i>
  102. <h3>Maximize amount of downloads</h3>
  103. </div>
  104. </div>
  105. </div>
  106. </section>
  107. <section id="share">
  108. <div class="wrapper">
  109. <h2 class="page-title">Preview your files in the browser!</h2>
  110. </div>
  111. </section>
  112. <section id="samples">
  113. <div class="wrapper">
  114. <h2 class="page-title">
  115. Sample use cases
  116. </h2>
  117. <div class="row">
  118. <div class="col-md-6 ">
  119. <h3>How to upload</h3>
  120. <div class="terminal-top">
  121. </div>
  122. <div class="terminal">
  123. <code class="code-wrapper"><span class="code-title"># Uploading is easy using curl</span>
  124. $ curl --upload-file ./hello.txt {{.WebAddress}}hello.txt
  125. {{.WebAddress}}66nb8/hello.txt
  126. $ curl -H "Max-Downloads: 1" -H "Max-Days: 5" --upload-file ./hello.txt {{.WebAddress}}hello.txt
  127. {{.WebAddress}}66nb8/hello.txt
  128. <span class="code-title"># Download the file</span>
  129. $ curl {{.WebAddress}}66nb8/hello.txt -o hello.txt
  130. </code>
  131. </div>
  132. </div>
  133. <div class="col-md-6 ">
  134. <h3>Add shell function to .bashrc or .zshrc</a></h3>
  135. <div class="terminal-top">
  136. </div>
  137. <div class="terminal">
  138. <code class="code-wrapper"><span class="code-title"># Add this to .bashrc or .zshrc or its equivalent</span>
  139. transfer(){ if [ $# -eq 0 ];then echo &quot;No arguments specified.\nUsage:\n transfer &lt;file|directory&gt;\n ... | transfer &lt;file_name&gt;&quot;&gt;&amp;2;return 1;fi;if tty -s;then file=&quot;$1&quot;;file_name=$(basename &quot;$file&quot;);if [ ! -e &quot;$file&quot; ];then echo &quot;$file: No such file or directory&quot;&gt;&amp;2;return 1;fi;if [ -d &quot;$file&quot; ];then file_name=&quot;$file_name.zip&quot; ,;(cd &quot;$file&quot;&amp;&amp;zip -r -q - .)|curl --progress-bar --upload-file &quot;-&quot; &quot;{{.WebAddress}}$file_name&quot;|tee /dev/null,;else cat &quot;$file&quot;|curl --progress-bar --upload-file &quot;-&quot; &quot;{{.WebAddress}}$file_name&quot;|tee /dev/null;fi;else file_name=$1;curl --progress-bar --upload-file &quot;-&quot; &quot;{{.WebAddress}}$file_name&quot;|tee /dev/null;fi;}
  140. <span class="code-title"># Now you can use transfer function</span>
  141. $ transfer hello.txt
  142. </code>
  143. </div>
  144. </div>
  145. </div>
  146. <a class="btn-cta" data-target="#coll" data-toggle="collapse">More examples</a>
  147. <div class="collapse " id="coll">
  148. <div class="row">
  149. <div class="col-md-6 ">
  150. <h3>Upload multiple files at once</h3>
  151. <div class="terminal-top">
  152. </div>
  153. <div class="terminal">
  154. <code class="code-wrapper">
  155. $ curl -i -F filedata=@/tmp/hello.txt -F filedata=@/tmp/hello2.txt {{.WebAddress}}
  156. <span class="code-title"># Combining downloads as zip or tar archive</span>
  157. $ curl {{.WebAddress}}(15HKz/hello.txt,15HKz/hello.txt).tar.gz
  158. $ curl {{.WebAddress}}(15HKz/hello.txt,15HKz/hello.txt).zip
  159. </code>
  160. </div>
  161. </div>
  162. <div class="col-md-6 ">
  163. <h3>Encrypt your files before the transfer</h3>
  164. <div class="terminal-top">
  165. </div>
  166. <div class="terminal">
  167. <code class="code-wrapper"><span class="code-title"># Encrypt files with password using gpg</span>
  168. $ cat /tmp/hello.txt|gpg -ac -o-|curl -X PUT --upload-file "-" {{.WebAddress}}test.txt
  169. <span class="code-title"># Download and decrypt</span>
  170. $ curl {{.WebAddress}}1lDau/test.txt|gpg -o- > /tmp/hello.txt
  171. </code>
  172. </div>
  173. </div>
  174. </div>
  175. <div class="row">
  176. <div class="col-md-6">
  177. <h3>Scan for malware</h3>
  178. <div class="terminal-top">
  179. </div>
  180. <div class="terminal">
  181. <code class="code-wrapper"><span class="code-title"># Scan for malware or viruses using Clamav</span>
  182. $ wget http://www.eicar.org/download/eicar.com
  183. $ curl -X PUT --upload-file ./eicar.com {{.WebAddress}}eicar.com/scan
  184. <span class="code-title"># Upload malware to VirusTotal, get a permalink in return</span>
  185. $ curl -X PUT --upload-file nhgbhhj {{.WebAddress}}test.txt/virustotal
  186. </code>
  187. </div>
  188. </div>
  189. <div class="col-md-6">
  190. <h3>Backup mysql database, encrypt and transfer</h3>
  191. <div class="terminal-top">
  192. </div>
  193. <div class="terminal">
  194. <code class="code-wrapper"><span class="code-title"># Backup, encrypt and transfer</span>
  195. $ mysqldump --all-databases|gzip|gpg -ac -o-|curl -X PUT --upload-file "-" {{.WebAddress}}test.txt</code>
  196. </div>
  197. </div>
  198. </div>
  199. <div class="row">
  200. <div class="col-md-6">
  201. <h3>Send email with transfer link (uses shell function)</h3>
  202. <div class="terminal-top">
  203. </div>
  204. <div class="terminal">
  205. <code class="code-wrapper"><span class="code-title"># Transfer and send email with link (uses shell function)</span>
  206. $ transfer /tmp/hello.txt | mail -s "Hello World" user@yourmaildomain.com
  207. </code>
  208. </div>
  209. </div>
  210. <div class="col-md-6">
  211. <h3>Using <a href="https://keybase.io/">Keybase.io</a></h3>
  212. <div class="terminal-top">
  213. </div>
  214. <div class="terminal">
  215. <code class="code-wrapper"><span class="code-title"># Import keys from keybase</span>
  216. $ keybase track [them]
  217. <span class="code-title"># Encrypt for recipient(s)</span>
  218. $ cat somebackupfile.tar.gz | keybase encrypt [them] | curl --upload-file '-' {{.WebAddress}}test.txt
  219. <span class="code-title"># Decrypt</span>
  220. $ curl {{.WebAddress}}sqUFi/test.md |keybase decrypt
  221. </code>
  222. </div>
  223. </div>
  224. </div>
  225. <div class="row">
  226. <div class="col-md-6">
  227. <h3>wget uploads also supported</h3>
  228. <div class="terminal-top">
  229. </div>
  230. <div class="terminal">
  231. <code class="code-wrapper"><span class="code-title"># wget</span>
  232. $ wget --method PUT --body-file=/tmp/file.tar {{.WebAddress}}file.tar -O - -nv
  233. </code>
  234. </div>
  235. </div>
  236. <div class="col-md-6">
  237. <h3>Transfer pound logs</h3>
  238. <div class="terminal-top">
  239. </div>
  240. <div class="terminal">
  241. <code class="code-wrapper"><span class="code-title"># grep syslog for pound and transfer</span>
  242. $ cat /var/log/syslog|grep pound|curl --upload-file - {{.WebAddress}}pound.log
  243. </code>
  244. </div>
  245. </div>
  246. </div>
  247. <div class="row">
  248. <div class="col-md-6">
  249. <h3>Upload a file using Powershell</h3>
  250. <div class="terminal-top">
  251. </div>
  252. <div class="terminal">
  253. <code class="code-wrapper"><span class="code-title"># Upload using Powershell</span>
  254. PS H:\&gt; invoke-webrequest -method put -infile .\file.txt {{.WebAddress}}file.txt
  255. </code>
  256. </div>
  257. </div>
  258. <div class="col-md-6">
  259. <h3>Upload a file using HTTPie</h3>
  260. <div class="terminal-top">
  261. </div>
  262. <div class="terminal">
  263. <code class="code-wrapper"><span class="code-title"># HTTPie</span>
  264. $ http {{.WebAddress}} -vv &lt; /tmp/test.log
  265. </code>
  266. </div>
  267. </div>
  268. </div>
  269. <div class="row">
  270. <div class="col-md-6">
  271. <h3>Upload a file using Unofficially client in Python</h3>
  272. <div class="terminal-top">
  273. </div>
  274. <div class="terminal">
  275. <code class="code-wrapper">
  276. <span class="code-title"># transfersh-cli (https://github.com/tanrax/transfersh-cli)</span>
  277. $ trasnfersh photos.zip
  278. <span class="code-title"># Uploading file</span>
  279. <span class="code-title"># Download from here: {{.WebAddress}}xxxxxx/photos.zip</span>
  280. <span class="code-title"># It has also been copied to the clipboard!</span>
  281. </code>
  282. </div>
  283. </div>
  284. <div class="col-md-6">
  285. <h3>Send us your awesome example</h3>
  286. <div class="terminal-top">
  287. </div>
  288. <div class="terminal">
  289. <code class="code-wrapper"><span class="code-title"># Your awesome sample will be put here</span>
  290. </code>
  291. </div>
  292. </div>
  293. </div>
  294. </div>
  295. </div>
  296. </section>
  297. <section id="share">
  298. <div class="wrapper">
  299. <h2 class="page-title">Follow on GitHub</h2>
  300. <br>
  301. <br>
  302. <iframe src="https://ghbtns.com/github-btn.html?user=dutchcoders&repo=transfer.sh&type=follow&count=true&size=large" allowtransparency="true" frameborder="0" scrolling="0" width="250" height="50"></iframe>
  303. <iframe src="https://ghbtns.com/github-btn.html?user=dutchcoders&repo=transfer.sh&type=watch&count=true&size=large" allowtransparency="true" frameborder="0" scrolling="0" width="200" height="50"></iframe>
  304. </div>
  305. </section>
  306. <section id="reviews">
  307. <div class="wrapper">
  308. <div class="row">
  309. <div class="col-md-8 col-md-offset-2 col-xs-12">
  310. <blockquote class="twitter-tweet tweet-xl" lang="en">
  311. <a href="https://twitter.com/FloifyDave/status/517383101425516544">
  312. <img class="twitter-profile" src="images/reviews/dave.jpg" alt="">
  313. </a>
  314. <p><a href="https://twitter.com/dutchcoders">@dutchcoders</a> Thanks for transfer.sh. Just used it for a production purpose for a customer. So great, so easy, so https. :)</p>
  315. <a href="https://twitter.com/FloifyDave/status/517383101425516544">
  316. &mdash; Dave Sims (@FloifyDave)</a>
  317. </blockquote>
  318. </div>
  319. </div>
  320. <div class="row">
  321. <div class="col-md-6 col-xs-12">
  322. <blockquote class="twitter-tweet" lang="en">
  323. <a href="https://twitter.com/kareemk/status/517029789191118849">
  324. <img class="twitter-profile" src="images/reviews/kareem.jpg" alt="">
  325. </a>
  326. <p><a href="https://twitter.com/dutchcoders">@dutchcoders</a> love transfer.sh! any change we can *pay* for a self-hosted version?</p><a href="https://twitter.com/kareemk/status/517029789191118849">&mdash; Kareem Kouddous (@kareemk) </a>
  327. </blockquote>
  328. </div>
  329. <div class="col-md-6 col-xs-12">
  330. <blockquote class="twitter-tweet" lang="en">
  331. <a href="https://twitter.com/drakpz/status/517008058841829376">
  332. <img class="twitter-profile" src="images/reviews/pg.jpeg" alt="">
  333. </a>
  334. <p><a href="http://t.co/JomAmqWYEB">http://t.co/JomAmqWYEB</a> by <a href="https://twitter.com/dutchcoders">@dutchcoders</a> is pure awesomeness! any chance of source on github? :-)</p><a href="https://twitter.com/drakpz/status/517008058841829376">&mdash; PJ Spagnolatti (@drakpz)</a>
  335. </blockquote>
  336. </div>
  337. </div>
  338. <div class="row">
  339. <div class="col-md-6 col-xs-12">
  340. <blockquote class="twitter-tweet" lang="en">
  341. <a href="https://twitter.com/jacoblindgren11/status/516975006501203968">
  342. <img class="twitter-profile" src="images/reviews/jacob.jpg" alt="">
  343. </a>
  344. <p>Love transfer.sh! Will be using it from now on! Thanks for the amazing service we can use from the CLI <a href="https://twitter.com/dutchcoders">@dutchcoders</a>
  345. </p><a href="https://twitter.com/jacoblindgren11/status/516975006501203968">&mdash; Jacob Lindgren (@jacoblindgren11) </a>
  346. </blockquote>
  347. </div>
  348. <div class="col-md-6 col-xs-12">
  349. <blockquote class="twitter-tweet" lang="en">
  350. <a href="https://twitter.com/arvestad/status/519507976491499521">
  351. <img class="twitter-profile" src="images/reviews/lars.jpg" alt="">
  352. </a>
  353. <p>transfer.sh is my latest fav service! Try simple command-line and web file sharing! <a href="https://t.co/FSrsb1JKJd">https://t.co/FSrsb1JKJd</a>&#10;Thanks <a href="https://twitter.com/dutchcoders">@dutchcoders</a> !</p> <a href="https://twitter.com/arvestad/status/519507976491499521">&mdash; Lars Arvestad (@arvestad)</a>
  354. </blockquote>
  355. </div>
  356. </div>
  357. </div>
  358. </section>
  359. <section id="share">
  360. <div class="wrapper">
  361. <h2 class="page-title">Share the love</h2>
  362. <ul class="share-buttons">
  363. <li>
  364. <a href="https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Ftransfer.sh&t=" target="_blank" onclick="window.open('https://www.facebook.com/sharer/sharer.php?u=' + encodeURIComponent(document.URL) + '&t=' + encodeURIComponent(document.URL)); return false;"> <i class="icon-facebook"></i>
  365. </a>
  366. </li>
  367. <li>
  368. <a href="https://twitter.com/intent/tweet?source=http%3A%2F%2Ftransfer.sh&text=:%20http%3A%2F%2Ftransfer.sh" target="_blank" title="Tweet" onclick="window.open('https://twitter.com/intent/tweet?text=' + encodeURIComponent(document.title) + ':%20' + encodeURIComponent(document.URL)); return false;"> <i class="icon-twitter"></i>
  369. </li>
  370. <li>
  371. <a href="https://plus.google.com/share?url=http%3A%2F%2Ftransfer.sh" target="_blank" title="Share on Google+" onclick="window.open('https://plus.google.com/share?url=' + encodeURIComponent(document.URL)); return false;"> <i class="icon-gplus"></i>
  372. </a>
  373. </li>
  374. <li>
  375. <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Ftransfer.sh&title=&summary=&source=http%3A%2F%2Ftransfer.sh" target="_blank" title="Share on LinkedIn" onclick="window.open('http://www.linkedin.com/shareArticle?mini=true&url=' + encodeURIComponent(document.URL) + '&title=' + encodeURIComponent(document.title)); return false;"> <i class="icon-linkedin"></i>
  376. </a>
  377. </li>
  378. </ul>
  379. </div>
  380. </section>
  381. <section id="contact">
  382. <div class="wrapper">
  383. <i class="icon-mail"></i>
  384. <h2 class="page-title">
  385. Any questions?
  386. </h2>
  387. <a href="#" data-uv-trigger class="btn-cta">contact us</a>
  388. </div>
  389. </section>
  390. <section id="tor">
  391. <div class="wrapper">
  392. <a href="https://www.torproject.org"><img src="images/tor.svg" alt="">
  393. </a>
  394. <br/>
  395. <a href="http://jxm5d6emw5rknovg.onion/">http://jxm5d6emw5rknovg.onion/</a>
  396. </div>
  397. </section>
  398. include "includes/footer.html"
  399. include "includes/js.html"
  400. </body>
  401. </html>