使用scp將一個Linux系統中的文件或文件夾複製到另一臺Linux服務器上
複製文件或文件夾(目錄)命令:
一、複製文件:
(1)將本地文件拷貝到遠程
scp 文件名 用戶名@計算機IP或者計算機名稱:遠程路徑
本地192.168.1.8客戶端
scp /root/install.* [email protected]:/usr/local/src
(2)從遠程將文件拷回本地
scp 用戶名@計算機IP或者計算機名稱:文件名 本地路徑
本地192.168.1.8客戶端取遠程服務器12、11上的文件
scp [email protected]:/usr/local/src/*.log /root/
二、複製文件夾(目錄):
(1)將本地文件夾拷貝到遠程
scp -r 目錄名 用戶名@計算機IP或者計算機名稱:遠程路徑
scp -r /home/test1 [email protected]:/home/test2
#test1爲源目錄,test2爲目標目錄,[email protected]爲遠程服務器的用戶名和ip地址。
(2)從遠程將文件夾拷回本地
scp -r 用戶名@計算機IP或者計算機名稱:目錄名 本地路徑
scp -r [email protected]:/home/test2 /home/test1
#[email protected]爲遠程服務器的用戶名和ip地址,test1爲源目錄,test2爲目標目錄。
把scp切換到後臺運行:
輸入ctrl + z 暫停
[1]+ Stopped scp -r /u01/media/Disk1/ 192.168.1.31:/u01/media/
[root@oradb30 ~]#
此時查看jobs:
[root@oradb30 ~]# jobs
[1]+ Stopped scp -r /u01/media/Disk1/ 192.168.1.31:/u01/media/
[root@oradb30 ~]#
bg將該任務號放入後臺:
[root@oradb30 media]# bg %1
[1]+ scp -r Disk1/ 192.168.1.31:/u01/media/ &
查看任務已經在後臺運行:
[root@oradb30 media]# jobs
[1]+ Running scp -r Disk1/ 192.168.1.31:/u01/media/ &
使用disown -h 將這個作業忽略HUP信號:
[root@oradb30 media]# disown -h %1
[root@oradb30 media]# jobs
[1]+ Running scp -r Disk1/ 192.168.1.31:/u01/media/ &
退出登錄,再次進去查看任務運行狀態和父進程號:
[root@oradb30 media]# ps -ef|grep scp
root 12704 12638 0 05:19 pts/0 00:00:01 scp -r Disk1 192.168.1.31 /u01/media/
root 12705 12704 8 05:19 pts/0 00:00:17 /usr/bin/ssh -x -oForwardAgent no -oPermitLocalCommand no -oClearAllForwardings yes 192.168.1.31 scp -r -t /u01/media/
root 12823 12638 0 05:22 pts/0 00:00:00 grep scp
發現scp任務繼續運行,沒有因爲會話斷開而中斷,父進程號變爲1。