web-dev-qa-db-ja.com

pscpのパスワードを自動的に入力するコマンド

pscp(PuTTYから)を使用して、Windows PCからリモートLinuxシステムにファイルをコピーしたい。この方法でpscpコマンドを呼び出す小さなスクリプトを作成しました。

"C:\Users\hp\Desktop\pscp.exe" -scp C:\Users\hp\Desktop\scripts\* [email protected]:/root/scripts
"C:\Users\hp\Desktop\pscp.exe" -scp C:\Users\hp\Desktop\scripts2\* [email protected]:/root/scripts2 

pause

しかし、このbatスクリプトを起動すると、パスワードの入力を求められるため、パスワードを手動で入力します。

バッチファイルを使用してパスワードを自動的に入力する方法はありますか?

14
MOHAMED

PuTTYから ドキュメント

5.2.2.6 -pw passw指定されたパスワードでログイン

ホストへの接続にパスワードが必要な場合、PSCPは対話的にパスワードを要求します。ただし、これは常に適切とは限りません。自動化されたジョブの一部としてPSCPを実行している場合、手作業でパスワードを入力することはできません。 PSCPの-pwオプションを使用すると、コマンドラインで使用するパスワードを指定できます。

26
MC ND
pscp -pw yourPasswordHere C:\Users\testUser\Downloads\test.sh [email protected]:/home/testUser

-pwオプションを指定したコマンドのサンプルが誰も投稿していないことに気付きました。

27
blueberry0xff

このようなものを自分で解決できます。使用 /?オプションを使用してヘルプを表示します。関連する部分は以下のとおりです。

> pscp /?
PuTTY Secure Copy client 
 Release 0.60 
使用法:pscp [options] [user @] Host:source target 
 pscp [options] source [source ...] [user @] Host:target 
 pscp [options] -ls [user @] Host:filespec 
 Options:
 ... ... 
 -lユーザーが指定されたユーザー名で接続する
 -pw passw login with specified password 
 ...... 

使用 -lおよび-pwオプションは、ユーザーとパスワードを指定します。

したがって、それはあなたが尋ねた特定の質問に答えている間、あなたにとって本当の機会はコマンドラインユーティリティからドキュメントを入手する方法を学ぶことです。

3
David Heffernan
sshpass -p'password' pscp -A -H "ip" -t 20 -l root /var/www/html/temp_santosh.txt /tmp/

sshpasspscpの直前に-pオプションとともに使用できます

0
Santosh Raut

PuTTYを使用して、パスワードなしでリモートログインをセットアップします。これには、puttygenコマンドが含まれます。秘密鍵が必要になり、ターゲットには公開鍵が必要になります。パスワードを入力せずに適切な秘密鍵ファイルとログインがあることを確認したら、pscpの「-i」秘密鍵オプションを使用して参照できます。許可されていない場合、PuTTY接続なしでキーをセットアップできる場合がありますが、これが最も簡単な方法です。明確にパスワードにノーと言うだけです:

C:\Users\riglerjo>pscp -i .ssh\rigler_rsa.ppk test.txt [email protected]:.
test.txt                  | 0 kB |   0.0 kB/s | ETA: 00:00:00 | 100%
0
John Rigler