在linux中,我們常用scp命令傳輸文件:
如以下實例,我們想把當前服務器文件abc.sql傳輸到192.168.1.1服務器上,我們可以執行以下命令:
- scp /home/person/hww/abc.sql root@192.168.1.1:/home/person/hww
回車后輸入192.168.1.1服務器密碼就可以了。
你也可以使用以下命令:
- pscp /home/person/hww/abc.sql root@192.168.1.1:/home/person/hww
同樣回車后輸入 192.168.1.1服務器密碼就可以了。
pscp和scp功能相同,但pscp同時支持windows下使用,它有效解 決了windows系統向linux服務器傳輸文件,而且它只有一個文件,即pscp.exe,建議將該文件放到C:\WINDOWS\system32 下面,這樣就可以在任何地方調用該文件命令,你也可以放在任意你指定文件夾下。
pscp語法基本與scp相同,但也有一下幾個注意點:
-p 拷貝文件的時候保留源文件建立的時間。
-q 執行文件拷貝時,不顯示任何提示消息。
-r 拷貝整個目錄
-v 拷貝文件時,顯示提示信息。
Usage:
pscp [options] [user@]host:source target
pscp [options] source [source...] [user@]host
pscp [options] -ls user@host:filespec
用法:
pscp [選項] [用戶名@]主機:源文件 目標文件
pscp [選項] 源文件 [源文件……] [用戶名@]主機
pscp [選項] -ls 用戶名@主機:文件空間?
Options:
選項:
-p preserve file attributes 保護文件屬性
-q quiet, don't show statistics 安靜,不顯示統計
-r copy directories recursively 復制子文件夾
-V print version information and exit 顯示信息
-v show verbose messages
-load sessname Load settings from saved session
-load 加載,加載保存節的設定
-P port connect to specified port
-P 端口,連接到指定空間端口
-l user connect with specified username
-l 用戶,用指定的用戶連接空間
-pw passw login with specified password
-pw 密碼,用指定的密碼登錄空間
-1/-2 強迫 ssh 使用的版本
-4 -6 force use of IPv4 or IPv6
-C 打開壓縮
-i key 鑰匙,證明用的鑰匙文件
-batch 關閉交互能力,也許
-unsafe 不安全,允許伺服端取代字符 (危險的)
下面舉一實例方便大家理解:
想把xp系統下fileUpload文件夾下的所有內容傳輸到192.168.1.1的linux服務器上"/home/data/file"文件夾下。我們可以做以下操作:
1.我們把pscp.exe拷貝到fileUpload的同級目錄,然后我們可以寫一個簡單bat腳本,完成以上操作
2.腳本內容
- @echo off
- pscp.exe -l hww -pw "123" -r "fileUpload/" root@192.168.1.1:/home/data/file
- pause
把文件另存為以bat為后綴的文件,我把它定義為fileupload.bat
注意:hww為linux設置的上傳文件賬戶,123為hww登錄linux密碼。你也可以直接使用root帳號。但建議為了服務器安全,設置特別上傳帳號。
3.現在你只要把所要上傳的文件放置到fileUpload目錄下,然后雙擊fileupload.bat,你就可以見證奇跡的一刻了,windows控制台會顯示上傳內容,默默等待上傳完成,會提示”按任意鍵退出“!
OK,我們完成了windows系統對linux服務器文件的上傳。