SCP 指令使用教學,把 Windows 檔案複製到遠端 Linux 上

TL;DR
scp [參數] [使用者@主機IP]:來源檔案 [使用者@主機IP]:目的檔案
常用參數:
-p: 保留原本檔案資訊和權限
-C: 壓縮
-r: 遞迴複製整個資料夾的所有資料
-P: 後面接連接埠號碼,使用指定連接埠
-v: 顯示詳細資訊
-4: 強制使用 IPv4
-6: 強制使用 IPv6

正文:
要在 Windows、Linux 中傳輸檔案,第一時間想到的可能就是使用 FileZilla 或是 WinSCP等等工具,利用 FTP來傳輸
但是有時候只是要傳輸一個檔案而已,難道沒有更快的方式或指令嗎?

只要目的地主機有開啟 ssh,就可以使用 scp指令! Linux 設定開啟 ssh連線可以看這篇
他可以將遠端主機和本地主機的檔案做傳輸,當然遠端傳遠端、本地傳本地也可以(那幹嘛不用 cp 就好?)

例如要將本地 D槽下的 file.txt 檔案傳到遠端主機使用者名稱:ruyut,IP: 192.168.159.132 的 Documents 資料夾下:
scp "D:\file.txt" ruyut@192.168.159.132:~/Documents/

將遠端主機檔案抓回來並改個名:
scp ruyut@192.168.159.132:~\Documents\file.txt "D:\file_new.txt"

把本機D:\files資料夾上傳到遠端主機,並 保留原本檔案資訊和權限、壓縮、遞迴複製整個資料夾的所有資料、強制使用 IPv4
 scp -p -C -r -4 "D:\files" ruyut@192.168.159.132:~/Documents

是不是很方便呀

留言