文章作者:Tyan
博客:noahsnail.com ?|? CSDN ?|? 簡書
Linux系統下訪問服務器經常會碰到需要將服務器的文件拷貝到本地機器的問題,Linux系統中存在一個跨機器拷貝的命令scp。scp是secure copy的簡寫,用于在Linux下進行遠程文件拷貝,scp是跨服務器的并且傳輸是加密的。scp命令使用主要有兩種形式:
- 將文件從服務器拷貝到本地,在本地執行scp命令
# 命令形式:scp remote_server_address local_dir_file
# Demo,將服務器的/home/test/目錄下的filename文件拷貝到本機的當前目錄下
$ scp server_ip:/home/test/filename ./
- 將文件從本地上傳到服務器上,在本地執行scp命令
# 命令形式:scp local_dir_file remote_server_address
# Demo,將當前目錄下的filename文件上傳到服務器的/home/test目錄下
$ scp ./filename server_ip:/home/test
filename 100% 6419KB 3.1MB/s 00:02
備注:scp命令還有一些參數用來控制文件的上傳下載,參數如下:
- -1 強制scp命令使用協議ssh1
- -2 強制scp命令使用協議ssh2
- -4 強制scp命令只使用IPv4尋址
- -6 強制scp命令只使用IPv6尋址
- -B 使用批處理模式(傳輸過程中不詢問傳輸口令或短語)
- -C 允許壓縮。
- -p 保留原文件的修改時間,訪問時間和訪問權限。
- -q 不顯示傳輸進度條。
- -r 遞歸復制整個目錄。
- -v 詳細方式顯示輸出。
- -c cipher 以cipher將數據傳輸進行加密,這個選項將直接傳遞給ssh。
- -F ssh_config 指定一個替代的ssh配置文件,此參數直接傳遞給ssh。
- -i identity_file 從指定文件中讀取傳輸時使用的密鑰文件,此參數直接傳遞給ssh。
- -l limit 限定用戶所能使用的帶寬,以Kbit/s為單位。
- -P port port是指定數據傳輸使用的端口號
- -S program 指定加密傳輸時所使用的程序。