Fork me on GitHub

版权声明 本站原创文章 由 萌叔 发表
转载请注明 萌叔 | https://vearne.cc

聊聊几种服务器之间传文件的方式


1. 使用scp命令

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 ... [[user@]host2:]file2

DESCRIPTION :scp copies files between hosts on a network.  

scp 支持传输单个文件和文件夹

scp /home/test/1.mp3 root@192.168.8.100:/home/root/music

2. 使用python

可以直接使用下面命令,启动简单的文件服务器(单线程)
python2

python -m SimpleHTTPServer 8080

python3

python3 -m http.server --cgi 8080

下载

wget http://192.168.10.100:8080/tt.png

注意 请自行替换服务地址和文件名

3. 使用nc命令

接收端

 nc -l  8080 > tt.png

发送端

 nc 192.168.10.100 8080 < tt.png

注意 请自行替换服务地址和文件名

4. lrzsz

上传

rz 

下载

sz /tmp/abc.pdf

lrzsz 也支持Mac,适合大部分场景
Macos 可以参考iterm2-zmodem

5. 开发简单的静态文件服务

笔者之前曾经用过nginx + lua版本,所以这里也实现了一个Golang版本的,核心代码只有40行

  • 支持文件上传
  • 支持开启Basic Auth
  • 服务稳定,适合暂存 临时文件或者需要转交给他人的文件

github地址

vearne/file_transfer

上传/下载

curl -F file=@tt.png http://localhost:8080/upload 
wget http://localhost:8080/download/tt.png

使用basic auth

curl -F file=@tt.png http://localhost:8080/upload --user vearne:helloworld
wget --http-user=vearne --http-password=helloworld http://localhost:8080/download/tt.png 

你也可以直接在浏览器中访问以下地址,选择你需要的文件,进行下载文件。

http://localhost:8080/download

请我喝瓶饮料

微信支付码

1 对 “聊聊几种传文件的方式”的想法;

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据