一、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 地址;