从linux命令行分享文件:bashupload.com和transfer.sh

时间:2024-01-26 11:10:31

背景

传输文件是一个常见的需求,简单的做法是通过即时通讯工具,邮件,网盘完成。

但当分享或接收的一端为远程服务器,只有命令行可以操作时,一个能支持在命令行完成分享和下载的工具,就会省下不少麻烦。

下面介绍两个工具。

这两个都是之前在别的地方看到过简单的介绍,看完只是记了名字,一直没机会用,平时都是局域网scp拷贝,直到最近远程办公突然有了这个需求,刚好适用,顺便总结下推荐给大家。

bashupload.com

简介

借助bashupload.com,可以简单地从命令行上传文件,分析给其他的服务器,桌面和移动设备,最大支持25G。上传的文件会被保存7天,期间可以无限次下载。

直接打开 https://bashupload.com 这个网站,首页非常简洁,直接告诉你最重要的上传命令,下方则是其他情况的命令示例的链接。

示例

直接使用curl命令即可上传文件,命令执行完成会给出下载的链接。

其中name.txt是把你希望最终链接呈现的文件名,@后面是本地的文件名。

curl https://bashupload.com/name.txt --data-binary @file.txt

得到下载链接之后,直接使用wget即可下载

wget https://bashupload.com/xxxxx/name.txt

实际操作效果:

加解密示例

毕竟文件是上传到第三方,如果有需要保密的内容的话,最好是加密下再上传。官网上的示例是使用gpg。

加密并上传:

gpg -ac -o- test.txt | curl https://bashupload.com/encrypted.txt --data-binary @-

下载并解密:

curl https://bashupload.com/ca8H/encrypted.txt | gpg -d -o decrypted.txt

当然这个只是一种方式,实际方式多种多样,例如在本地自己先调用openssl等进行加密,再上传加密后的文件。只要下载方能逆向解密即可。

浏览器操作

如果传输文件的一端不方便使用命令行,也可以通过浏览器进行上传和下载。

在首页即可上传文件。而上传后得到的下载链接,也可以从浏览器直接打开进行下载。

例如刚刚的示例文件,从浏览器打开是这样的

其他

官网上还有其他情况的具体介绍,例如上传文件夹等。
只要记住网址就行了,具体命令需要的时候,再上官网查即可。

transfer.sh

简介

这个官网看起来更fashion一些。

打开官网,同样在最开始给出了最重要的,上传命令示例。

特性也列出来了,最大10G,保存14天等。

向下滚动,可以看到更多的示例代码。提供了可以加到~/.bashrc中alias示例,可以更方便地进行上传。还有带加解密的传输示例,使用Powershell,使用HTTPie上传文件的示例。还可以自定义允许下载的次数和保存时间。

示例

直接使用curl命令即可上传文件,命令执行完成会给出下载的链接。

curl --upload-file ./hello.txt https://transfer.sh/hello.txt 

得到下载链接之后,直接使用wget或curl即可下载。

curl https://transfer.sh/66nb8/hello.txt -o hello.txt 

实际操作效果:

返回的下载网址没有加换行,这点看起来比较不舒服。

其他的加解密等示例代码就不贴了,需要的直接上官网复制即可。

浏览器操作

官网首页可以上传文件。从命令行或浏览器上传后得到的链接,可以直接在浏览器打开。

从浏览器下载的界面是这样

本文链接

blog:https://www.cnblogs.com/zqb-all/p/12345560.html
公众号:https://mp.weixin.qq.com/s/XvGARlKSWPEFEW4sMWMNKQ