scp 是 secure copy 的縮寫, 是 linux 系統(tǒng)下基于 ssh 登陸進(jìn)行安全的遠(yuǎn)程文件拷貝命令,用于 Linux 之間復(fù)制文件和目錄。
1. 從本地復(fù)制到遠(yuǎn)程
? 將本地文件拷貝到遠(yuǎn)程
scp local_file remote_username@remote_ip:remote_folder
? 將本地文件夾拷貝到遠(yuǎn)程
scp -r local_folder remote_username@remote_ip:remote_folder
2. 從遠(yuǎn)程復(fù)制到本地
將遠(yuǎn)程文件拷貝到本地
scp remote_username@remote_ip:remote_file local_folder
將遠(yuǎn)程文件夾拷貝到本地
scp -r remote_username@remote_ip:remote_folder local_folder
3. 補(bǔ)充說明
1)使用scp命令時(shí),用戶要具有讀取遠(yuǎn)程服務(wù)器相應(yīng)文件的權(quán)限, 否則命令會(huì)終止
2)如果遠(yuǎn)程服務(wù)器防火墻為scp命令設(shè)置了指定的端口,我們需要使用 -P 參數(shù)來設(shè)置命令的端口號(hào)
#scp 命令使用端口號(hào) 4588
scp -P 4588 remote_username@remote_ip:remote_file local_folder
3)我們傳輸數(shù)據(jù)時(shí)常將其不掛斷運(yùn)行
可能有多種方法,這里只給出我使用nohup時(shí)遇到的問題。
nohup和&區(qū)別
&: 指在后臺(tái)運(yùn)行
nohup: 不掛斷的運(yùn)行,它并沒有后臺(tái)運(yùn)行的功能,它可以將命令永久得執(zhí)行,即使我們退出也不會(huì)中斷。
例:將本地文件拷貝到遠(yuǎn)程
nohup scp local_file remote_username@remote_ip:remote_folder
我們不要在上述命令后加上“&”符號(hào),可能是傳輸文件需要輸入密碼的原因,加上“&”在后臺(tái)運(yùn)行任務(wù)無法進(jìn)行。
執(zhí)行上述命令后提示輸入密碼,輸入密碼后會(huì)“卡住不動(dòng)”(傳的數(shù)據(jù)比較大,在運(yùn)行中),我們想繼續(xù)做別的事就沒法進(jìn)行,這個(gè)時(shí)候我們使用Ctrl+Z組合鍵暫停應(yīng)用,然后輸入命令bg即可啟動(dòng)后臺(tái)傳輸任務(wù)。為了避免問題,假如我們要關(guān)閉服務(wù)器,我們盡量使用命令exit退出服務(wù)器。
參考:Linux scp命令