transfer.sh:通過命令行簡單的創建文件分享

簡介

通過一個命令,就可以在終端上,將文件加密傳輸到遠程服務器,提供對外文件共享的功能。

transfer.sh這是一個我常用的、可以在終端上使用的文件共享服務,可以在某些方面替代sz或者scp命令。通過配置,終端上一個命令就可以將文件加密傳輸到遠程服務器,方便下載。常規使用需要有 linux 命令行的基礎,國內雖然訪問略慢。在國外的VPS上單線程下載幾乎是能跑滿帶寬的,可以說沒限速。配合一些沒有 gui 界面的終端命令行簡直不能再爽。

transfer.sh:通過命令行簡單的創建文件分享


安裝

只需要把下述代碼加入到交互shell的配置文件中即可,我用的是zsh,所以編譯 ~/.zshrc,將這段腳本加入進去,寫入保存之後執行"source ~/.zshrc"刷新一下。

transfer() { if [ $# -eq 0 ]; then echo -e "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi
tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile; }

使用

使用也非常簡單,對需要上傳分享的文件執行"transfer"命令就可以了,比如當前目錄下有一個BDW.sh的腳本,執行"transfer BDW.sh "

transfer.sh:通過命令行簡單的創建文件分享


文件上傳成功之後會返回一個鏈接地址,就是當前上傳的文件網絡地址,文件默認保存 14 天,之後自動刪除。

這一套程序也是開源的https://github.com/dutchcoders,也可以找到服務器端,自行部署到自己的服務器上。


分享到:


相關文章: