一、scp是什麼?
scp是secure copy的簡寫,用於在Linux下進行遠程拷貝文件的命令,和它類似的命令有cp,不過cp只是在本機進行拷貝不能跨服務器,而且scp傳輸是加密的,可能會稍微影響一下速度。
二、scp有什麼用?
1、我們需要獲得遠程服務器上的某個文件,遠程服務器既沒有配置ftp服務器,沒有開啓web服務器,也沒有做共享,無法通過常規途徑獲得文件時,只需要通過scp命令便可輕鬆的達到目的;
2、我們需要將本機上的文件上傳到遠程服務器上,遠程服務器沒有開啓ftp服務器或共享,無法通過常規途徑上傳是,此時也可以通過scp命令便可以輕鬆的達到目的;
三、scp使用方法
1、獲取遠程服務器上的文件
# cp -P 2424 username@(ip或遠程服務別名):/home/username/a.tar.gz /home/username/
-P 2424表示更改SSH端口後的端口,如果沒有更改SSH端口可以不用添加該參數;
username@ip 表示使用指定用戶登錄遠程服務器;
2、獲取遠程服務器上的目錄
# scp -P 2424 -r name@ip:/home/name/aaa/ /home/name/
-r 參數表示遞歸複製(即複製該目錄下面的文件和目錄);
name@ip:/home/name/aaa/ 表示將遠程服務器上用戶家目錄下的aaa文件夾的內容複製到本地加目錄下;
/home/name/ 表示保存在本地上的路徑;
3、將本地文件上傳到服務器上
# scp -P 2424 ~/aaa.tar.gz name@ip:/home/user/
表示將本地用戶家目錄的文件上傳至遠程服務器上用戶的家目錄下;
4、將本地目錄上傳到服務器上
# scp -P 2424 -r ~/aaa/ name@ip:/home/user/bbb/
表示將本地家目錄aaa的文件夾的文件全部傳至遠程服務用戶家目錄下的bbb文件夾裏;
5、可能有用的幾個參數 :
-P 端口;
-p 表示保持文件權限;
-r 表示遞歸複製;
-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度, 可以用來查看連接、認證或是配置錯誤 ;
-C 使能壓縮選項 ;
-4 強行使用 IPV4 地址 ;
-6 強行使用 IPV6 地址 ;