一:scp常規(guī)的使用方式:
scp可以進行簡單的遠程復制文件的功能。它是一個在各個主機之間進行復制或文件傳輸?shù)囊粋€命令工具。它使用一種同ssh一樣的安全機制來進行文件的傳輸。
1、從服務器下載文件
scp username@servername:/path/filename /tmp/local_destination
例如scp codinglog@192.168.0.101:/home/kimi/test.txt 把192.168.0.101上的/home/kimi/test.txt
的文件下載到 /tmp/local_destination
2、上傳本地文件到服務器
scp /path/local_filename username@servername:/path
例如scp /var/www/test.php codinglog@192.168.0.101:/var/www/ 把本機/var/www/目錄下的test.php文件
上傳到192.168.0.101這臺服務器上的/var/www/目錄中
3、從服務器下載整個目錄
scp -r username@servername:remote_dir/ /tmp/local_dir
例如:scp -r codinglog@192.168.0.101 /home/kimi/test /tmp/local_dir
4、上傳目錄到服務器
scp -r /tmp/local_dir username@servername:remote_dir
例如:
scp -P 22 -r test codinglog@192.168.0.101:/var/www/ 把當前目錄下的test目錄上傳到服務器的/var/www/ 目錄
二: 多文件傳輸
2-1 從本地文件復制多個文件到遠程主機(多個文件使用空格分隔開)
先進入本地目錄下,然后運行如下命令:
scp index.css json.js root@192.168.1.104:/usr/local/nginx/html/webs
2-2 從遠程主機復制多個文件到當前目錄
先進入本地目錄下,然后運行如下命令:
scp root@192.168.1.104:/usr/local/nginx/html/webs/\{index.css,json.js\} .
三:復制整個文件夾(使用r switch 并且指定目錄)
3-1 從本地文件復制整個文件夾到遠程主機上(文件夾假如是diff)
先進入本地目錄下,然后運行如下命令:
scp -v -r diff root@192.168.1.104:/usr/local/nginx/html/webs
3-2 從遠程主機復制整個文件夾到本地目錄下(文件夾假如是diff)
先進入本地目錄下,然后運行如下命令:
scp -r root@192.168.1.104:/usr/local/nginx/html/webs/diff .
四:在兩個遠程主機之間復制文件
scp也可以把文件從一個遠程主機復制到另一個遠程主機上。
如下命令:
scp root@192.168.1.104:/usr/local/nginx/html/webs/xx.txt root@192.168.1.105:/usr/local/nginx/html/webs/
五:使用壓縮來加快傳輸
在文件傳輸?shù)倪^程中,我們可以使用壓縮文件來加快文件傳輸,我們可以使用 C選項來啟用壓縮功能,該文件在傳輸過程中被壓縮,
在目的主機上被解壓縮。
如下命令:
scp -vrC diff root@192.168.1.104:/usr/local/nginx/html/webs