1. sftp
Secure Ftp 是一個基於SSH安全協議的文件傳輸管理工具。由於它是基於SSH的,會在傳輸過程中對用戶的密碼、數據等敏感信息進行加密,因此可以有效的防止用戶信息在傳輸的過程中被竊取,比FTP有更高的安全性。在功能方面與FTP很類似,不僅可以傳輸文件數據,而且可以進行遠程的文件管理(如建立,刪除,查看文件列表等操作)。Sftp與ftp雖然只有一字之差,但基於的傳輸協議卻是不同的。因此不能用sftp client去連接ftp server 也不能用 ftp client 去連接 sftp server。
建立連接:sftp user@host 從本地上傳文件:put localpath 下載文件:get remotepath 切換遠程目錄:cd 顯示遠程工作目錄:pwd 建立遠程目錄:mkdir 與遠程相對應的本地操作,只需要在命令前加上”l” 即可,方便好記。 如:lcd l pwd l mkdir
2. scp
SCP :secure copy (remote file copy program) 也是一個基於SSH安全協議的文件傳輸命令。與sftp不同的是,它只提供主機間的文件傳輸功能,沒有文件管理的功能。
簡單的命令如下:
復制local_file 到遠程目錄remote_folder下
scp local_file remote_user@host:remote_folder
復制local_folder 到遠程 remote_folder(需要加參數 -r 遞歸)
scp -r local_folder remote_user@host:remote_folder
如:將本地 logs 文件夾下的所有文件復制到服務器上 scp -r /Users/lily/Desktop/test/logs root@ip:~
以上命令反過來寫就是遠程服務器復制到本地
如:從測試服務器復制日志文件到本地 logs 目錄下
scp user@ip:/data/app/xxx/logs/catalina.out /Users/lily/Desktop/test/logs/
3. scp sftp區別
SCP比較簡單,是輕量級的,SFTP的功能則比較多
SFTP在文件傳輸過程中中斷的話,連接后還可以繼續傳輸,但SCP不行
4. sz/rz
sz/rz 是基於ZModem傳輸協議的命令。對傳輸的數據會進行核查,並且有很好的傳輸性能。使用起來更是非常方便,但前提是 window 端需要有能夠支持ZModem的telnet或者SSH客戶端,例如secureCRT。
首先需要在secureCRT中可以配置相關的本地下載和上傳目錄,然后用rz、sz命令即可方便的傳輸文件數據。
下載數據到本地下載目錄:sz filename1 filename2 …
上傳數據到遠程:執行rz –be 命令,客戶端會彈出上傳窗口,用戶自行選擇(可多選)要上傳的文件即可。
注意:單獨用rz會有兩個問題:上傳中斷、上傳文件變化(md5不同),解決辦法是上傳是用rz -be,並且去掉彈出的對話框中“Upload files as ASCII”前的勾選。
-b binary 用binary的方式上傳下載,不解釋字符為ascii
-e 強制escape 所有控制字符,比如Ctrl+x,DEL等
sz **** 命令,保存文件****到windows
rz 命令,會彈出窗口,選擇要上傳的文件
如果沒有安裝,需安裝
yum install lrzsz # centos
sudo apt-get install lrzsz # Debian 和 Ubuntu
brew install lrzsz was # Mac OS X
mac上使用rz,sz命令,mac上的終端不支持rz 和sz,所以安裝iterm並配置使用rz和cz
1、首先需要下載安裝iterm2,下載地址:下載后安裝
http://www.iterm2.cn/download
2、使用brew 安裝lrzsz
終端輸入brew install lrzsz,如果沒有安裝homeBrew需要先安裝
安裝完成后檢查 ls -alh /usr/local/bin/sz 是否存在
3、添加trigger
lrszs命令安裝成功之后就是要創建兩個腳本到/usr/local/bin目錄,腳本地址:
https://github.com/mmastrac/iterm2-zmodem
最后修改iterm2的配置:
打開iterm2------ 同時按 command和,鍵 -------Profiles ---------- Default ------- Advanced ------ Triggers的Edit按鈕
點擊+號,添加如下的參數,參考下圖
Regular expression: /*/*B0100
Action: Run Silent Coprocess
Parameters:/usr/local/bin/iterm2-send-zmodem.sh
Regular expression: /*/*B00000000000000
Action: Run Silent Coprocess
Parameters:/usr/local/bin/iterm2-recv-zmodem.sh
4、使用rz,sz命令
進入到一個目錄下sz+文件名稱,可以下載一個文件,最后選擇下載到的目錄
進入到一個目錄下rz可以上傳一個文件,最后選擇上傳的文件
-----------------------------------------------------
Linux下和Windows之間的文件傳輸工具rz/sz(lrz/lsz) 介紹
【什么是rz/sz (lsz/lrz)】
簡單說就是,可以很方便地用這兩個sz/rz工具,實現Linux下和Windows之間的文件傳輸(發送和接收),速度大概為10KB/s,適合中小文件。rz/sz 通過Zmodem協議傳輸數據。
【為什么要用rz/sz】
普通Linux和Windows之間的文件共享方法,主要有建立nfs實現文件共享,和tftp之類的方法,但是都很麻煩,而如果只是小文件(幾十 K,幾百K),那么直接用rz/sz,就顯得極其地方便了。大文件的話,還是要考慮上面說得,其他的共享方法了,畢竟,rz/sz速度只有10K左右,傳大文件會累死人的。。。
【如何使用】
(1)在Windows下,用SecureCRT(或者Windows自帶的超級終端)連接Com端口到開發板,或者ssh等協議連接到Linux服務器上。
(2)在Linux端,安裝了rz/sz (lrz/lsz)工具后(嵌入式開發中,多數已經將編譯好的rz/sz工具放到rootfs中了,普通的Linux系統,如果沒有,可以下載源碼,自己安裝),就可以直接運行rz/sz,實現和Windows之間的文件傳輸了:
A、從windows中拷貝/下載文件到Linux(開發板):
運行rz后,會自動彈出WIndows下的文件選擇對話框,選擇對應文件后,添加,然后確定,就開始傳輸,將windows中的文件,拷貝到Linux中了。
B、將Linux中的文件拷貝到Windows中某個文件夾:
執行sz file_name 就可以將Linux當前文件夾下的文件file_name拷貝到Windows的對應目錄中了,其中,Windows目錄是由你當前運行的工具中設定的。
此處我用的是SecureCRT,具體的更改 rz上傳/sz下載 的默認的路徑的方法:
右鍵點擊當前會話session -> Session Options -> Terminal -> Xmodem/Zmodem ->Directories :
Upload : 你要設置的路徑
Download:你要設置的路徑
參考:
【1】https://blog.csdn.net/lijianhua_showit/article/details/24292903
【2】https://blog.csdn.net/zhangjq520/article/details/85051204