文件下載上傳小工具
前言
雖然現在文件上傳下載工具多如牛毛,比如
http、ftp、sftp、scp等方案都可以用於文件傳輸,但都是需要安裝伺服器甚至客戶端。
有一種場景是我只需要臨時上傳或下載一個文件,完了就不用伺服器運行了,如果使用那些文件傳輸工具,不光安裝麻煩,開啟關閉也惱火額。
因此才想搞小工具,不過Python愛好者可以用python -m http.server 8080 --bind 192.168.1.100開啟文件伺服器,對我來說還是麻煩。
已經上傳到【Github】,隨意鑒賞。
源碼鑒賞
可以使用url訪問,會顯示一個建議web頁面,可以在這個web頁面上傳下載文件,以及進行文件的排序。
也可以使用wget或curl命令行工具上傳下載文件,多種選擇,總有一個是你想要的方式。
增加秘鑰選項,使用後上傳下載傳輸的數據全都加密,且秘鑰每次都隨機,有crc和時間戳校驗,安全性極高。
使用加密選項時,無法通過web展示目錄頁面(前端加密程式碼不想寫),可通過本程式命令行實現加密上傳下載。
本工具作為客戶端時可以實現斷點上傳或斷點下載。提示裡面有伺服器和客戶端命令行,可以參考。
成功執行後會顯示幫助命令,可以複製改改就能用,非常方便。
2021-01-23號更新了一下,可以執行.\UpDownFile.exe -reg -s 127.0.0.1:8080在同級目錄下產生addRightClickRegistry.reg的註冊表文件。
通過雙擊註冊表文件可以將本程式加入右鍵菜單,從此需要對某個目錄創建臨時文件服務,只需要在對應目錄右鍵點一下下。Linux命令行可比window好辦多了。

並且增加了上傳下載文件完成後展示文件的md5值,這樣可以確保傳輸的文件是否有損壞。

食用方法
執行
UpDownFile -h可以查看幫助文檔,執行UpDownFile cli -h可以查看客戶端幫助文檔。
不使用加密方式,可以通過web頁面查看伺服器的目錄,可以對目錄排序,點擊文件可以下載,點擊目錄可進入。
工具雖小,但確實解決了我個人的臨時上傳下載文件需求,再也不用到處安裝各種伺服器咯,爽爽噠。

UpDownFile.exe -s 127.0.0.1:8080 -p C:\dir -e password
dir [C:\dir],url [//127.0.0.1:8080/]
server:
UpDownFile.exe -s 127.0.0.1:8080 -p C:\dir -e password
cli get:
UpDownFile.exe cli -u "//127.0.0.1:8080/dir/tmp.txt" -c -e password
cli post:
UpDownFile.exe cli -d @C:\tmp.txt -u "//127.0.0.1:8080/dir/tmp.txt" -c -e password
GET file:
wget -c --content-disposition "//127.0.0.1:8080/dir/tmp.txt"
curl -C - -OJ "//127.0.0.1:8080/dir/tmp.txt"
POST file:
wget -qO - --post-file=C:\tmp.txt "//127.0.0.1:8080/dir/tmp.txt"
curl --data-binary @C:\tmp.txt "//127.0.0.1:8080/dir/tmp.txt"
curl -F "file=@C:\tmp.txt" "//127.0.0.1:8080/dir/"

