聊聊几种传文件的方式
版权声明 本站原创文章 由 萌叔 发表
转载请注明 萌叔 | 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地址
上传/下载
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
不错