Linux scp命令

Linux 命令大全 Linux 命令大全

Linux scp命令用于Linux之間復(fù)制文件和目錄。

scp是 secure copy的縮寫, scp是linux系統(tǒng)下基于ssh登陸進(jìn)行安全的遠(yuǎn)程文件拷貝命令。

語法

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2

簡(jiǎn)易寫法:

scp [可選參數(shù)] file_source file_target 

參數(shù)說明:

  • -1: 強(qiáng)制scp命令使用協(xié)議ssh1
  • -2: 強(qiáng)制scp命令使用協(xié)議ssh2
  • -4: 強(qiáng)制scp命令只使用IPv4尋址
  • -6: 強(qiáng)制scp命令只使用IPv6尋址
  • -B: 使用批處理模式(傳輸過程中不詢問傳輸口令或短語)
  • -C: 允許壓縮。(將-C標(biāo)志傳遞給ssh,從而打開壓縮功能)
  • -p:保留原文件的修改時(shí)間,訪問時(shí)間和訪問權(quán)限。
  • -q: 不顯示傳輸進(jìn)度條。
  • -r: 遞歸復(fù)制整個(gè)目錄。
  • -v:詳細(xì)方式顯示輸出。scp和ssh(1)會(huì)顯示出整個(gè)過程的調(diào)試信息。這些信息用于調(diào)試連接,驗(yàn)證和配置問題。
  • -c cipher: 以cipher將數(shù)據(jù)傳輸進(jìn)行加密,這個(gè)選項(xiàng)將直接傳遞給ssh。
  • -F ssh_config: 指定一個(gè)替代的ssh配置文件,此參數(shù)直接傳遞給ssh。
  • -i identity_file: 從指定文件中讀取傳輸時(shí)使用的密鑰文件,此參數(shù)直接傳遞給ssh。
  • -l limit: 限定用戶所能使用的帶寬,以Kbit/s為單位。
  • -o ssh_option: 如果習(xí)慣于使用ssh_config(5)中的參數(shù)傳遞方式,
  • -P port:注意是大寫的P, port是指定數(shù)據(jù)傳輸用到的端口號(hào)
  • -S program: 指定加密傳輸時(shí)所使用的程序。此程序必須能夠理解ssh(1)的選項(xiàng)。

實(shí)例

1、從本地復(fù)制到遠(yuǎn)程

命令格式:

scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file 

  • 第1,2個(gè)指定了用戶名,命令執(zhí)行后需要再輸入密碼,第1個(gè)僅指定了遠(yuǎn)程的目錄,文件名字不變,第2個(gè)指定了文件名;
  • 第3,4個(gè)沒有指定用戶名,命令執(zhí)行后需要輸入用戶名和密碼,第3個(gè)僅指定了遠(yuǎn)程的目錄,文件名字不變,第4個(gè)指定了文件名;

應(yīng)用實(shí)例:

scp /home/space/music/1.mp3 root@www.o2fo.com:/home/root/others/music 
scp /home/space/music/1.mp3 root@www.o2fo.com:/home/root/others/music/001.mp3 
scp /home/space/music/1.mp3 www.o2fo.com:/home/root/others/music 
scp /home/space/music/1.mp3 www.o2fo.com:/home/root/others/music/001.mp3 

復(fù)制目錄命令格式:

scp -r local_folder remote_username@remote_ip:remote_folder 
或者 
scp -r local_folder remote_ip:remote_folder 
  • 第1個(gè)指定了用戶名,命令執(zhí)行后需要再輸入密碼;
  • 第2個(gè)沒有指定用戶名,命令執(zhí)行后需要輸入用戶名和密碼;

應(yīng)用實(shí)例:

scp -r /home/space/music/ root@www.o2fo.com:/home/root/others/ 
scp -r /home/space/music/ www.o2fo.com:/home/root/others/ 

上面命令將本地 music 目錄復(fù)制到遠(yuǎn)程 others 目錄下。

2、從遠(yuǎn)程復(fù)制到本地

從遠(yuǎn)程復(fù)制到本地,只要將從本地復(fù)制到遠(yuǎn)程的命令的后2個(gè)參數(shù)調(diào)換順序即可,如下實(shí)例

應(yīng)用實(shí)例:

scp root@www.o2fo.com:/home/root/others/music /home/space/music/1.mp3 
scp -r www.o2fo.com:/home/root/others/ /home/space/music/

說明

1.如果遠(yuǎn)程服務(wù)器防火墻有為scp命令設(shè)置了指定的端口,我們需要使用 -p 參數(shù)來設(shè)置命令的端口號(hào),命令格式如下:

#scp命令使用端口號(hào) 4588
scp -p 4588 remote@www.o2fo.com:/usr/local/sin.sh /home/administrator

2.使用scp命令要確保使用的用戶具有可讀取遠(yuǎn)程服務(wù)器相應(yīng)文件的權(quán)限,否則scp命令是無法起作用的。

Linux 命令大全 Linux 命令大全