以前一直用SecureCRT漢化版,前段時間爆出的putty中文后門事件才開始關注putty和使用,只有一個文件太Happy了,不過沒有SecureCRT這么多功能。不過我喜歡簡單。但是用SSH還不知道怎么傳文件上去,所以用了一下pscp還不錯哦。
記錄一下putty的pscp的用法,不然老忘記。哎,多用幾次就能記住了吧!
pscp用法
scp命令例如:pscp c:\testtest.tar root@192.168.153.193:/home/guowei/ 回車后輸入密碼就可以了。
上傳
1
|
PSCP.EXE -p -r -
v
-pw xxxxxxx e:\soft\mysql.sh root@192.168.153.193:
/root/tmp/test/
|
下載
1
|
PSCP.EXE -pw xxxxxxx root@192.168.153.193:
/root/tmp/test/mysql
.sh c:\soft\temp\
|
具體用法:
PSCP和SCP功能相同,在windows下使用,只有一個文件,建議將pscp.exe放到C:\WINDOWS\system32下面,這樣就可以在任何地方調用了。語法與scp相同,下面是幾個有用的options。
-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 不安全,允許伺服端取代字符 (危險的)
------------------------------------------------------------------------------------------------------------------------------------
Linux SSH遠程文件/目錄傳輸命令scp
1
|
scp
-P 2222 root@www.vpser.net:
/root/lnmp0
.4.
tar
.gz
/home/lnmp0
.4.
tar
.gz
|
上端口大寫P 為參數,2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數。 root@www.vpser.net 表示使用root用戶登錄遠程服務器www.vpser.net,:/root/lnmp0.4.tar.gz 表示遠程服務器上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路徑和文件名。
2、獲取遠程服務器上的目錄
1
|
scp
-P 2222 -r root@www.vpser.net:
/root/lnmp0
.4/
/home/lnmp0
.4/
|
上端口大寫P 為參數,2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數。-r 參數表示遞歸復制(即復制該目錄下面的文件和目錄);root@www.vpser.net 表示使用root用戶登錄遠程服務器www.vpser.net,:/root/lnmp0.4/ 表示遠程服務器上的目錄,最后面的/home/lnmp0.4/表示保存在本地上的路徑。
3、將本地文件上傳到服務器上
1
|
scp
-P 2222
/home/lnmp0
.4.
tar
.gz root@www.vpser.net:
/root/lnmp0
.4.
tar
.gz
|
上端口大寫P 為參數,2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數。 /home/lnmp0.4.tar.gz表示本地上准備上傳文件的路徑和文件名。root@www.vpser.net 表示使用root用戶登錄遠程服務器www.vpser.net,:/root/lnmp0.4.tar.gz 表示保存在遠程服務器上目錄和文件名。
4、將本地目錄上傳到服務器上
1
|
scp
-P 2222 -r
/home/lnmp0
.4/ root@www.vpser.net:
/root/lnmp0
.4/
|
上 端口大寫P 為參數,2222 表示更改SSH端口后的端口,如果沒有更改SSH端口可以不用添加該參數。-r 參數表示遞歸復制(即復制該目錄下面的文件和目錄);/home/lnmp0.4/表示准備要上傳的目錄,root@www.vpser.net 表示使用root用戶登錄遠程服務器www.vpser.net,:/root/lnmp0.4/ 表示保存在遠程服務器上的目錄位置。
5、可能有用的幾個參數 :
-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連接 , 認證 , 或是配置錯誤 .
-C 使能壓縮選項 .
-4 強行使用 IPV4 地址 .
-6 強行使用 IPV6 地址 .
SCP 續傳
使用scp不能出錯,一旦中斷就只能重新開始,但可以利用rsync進行斷點續傳。
可以在~/.bashrc中加入一個alias:
1
|
alias
rscp=
'rsync -v -P -e ssh'
|
然后source一下,讓它啟用。
1
|
$
source
~/.bashrc
|