getpassword

【Tera Term マクロ言語】コマンドリファレンス

getpassword 機能

[パスワードコマンド]

パスワードを読み出します。

コマンドライン

getpassword <file name> <password name> <strvar>

機能説明

パスワードファイル <file name> から <password name> で指定されるパスワードを読みだします。
そのパスワードは暗号化されているので、それを解読してから文字列変数 <strvar> に保存します。

(バージョン 4.71 以降)
パスワードファイルへの書き込みに失敗した場合、システム変数 result に 0 が格納されます。それ以外の場合、result に 1 が格納されます。

【備考】
出力されたパスワード入力ダイアログボックスを Esc キーでキャンセルすると、パスワード入力したとみなされて詳細不明な文字列が保存されてしまう*1ことがあります。
<file name>
パスワードファイルを指定します。

もし指定されたファイルが存在しなければ、新しくファイルを作成します。
<password name>
パスワードファイル内のパスワード識別子を指定します。

一つのパスワードファイルに複数のパスワードを保存することができます。
各パスワードはパスワード識別子によって識別されます。
<strvar>
もし指定されたパスワード識別子がファイルの中になければ、パスワードダイアログボックスが現れ、入力されたパスワードは文字列変数 <strvar> に保存されます。
同時に、その新しいパスワードは暗号化されパスワード識別子 <password name> と共にファイルに書き込まれます。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<file name>文字列パスワードファイルを指定します。
<password name>文字列パスワード識別子を指定します。
<strvar>文字列パスワードを格納する変数を指定します。

対象バージョン

一部機能は、全てのバージョンで利用可能です。
バージョン 4.71 より強化された機能があります。

戻り値

戻り値として以下の変数が定義されます。
変数名意味
result0パスワードファイルへの書き込みに失敗した
1パスワードファイルへの書き込みに成功した
<strvar>文字列入力した文字列
<strvar> は、コマンド実行時に指定した任意の文字列です。

関連コマンド

特殊文字変換系
種別:文字列操作Ver機能の簡易説明
strspecial4.67以降特殊文字を変換する。
パスワード系
種別:パスワードコマンドVer機能の簡易説明
delpasswordパスワードを削除する。
ispassword4.75以降パスワードが設定されているかを判別する。
passwordboxパスワードを入力するためのダイアログボックスを開く。
4.54以降特殊文字の解釈を制御するオプションの追加。
setpassword4.75以降パスワードを追加もしくは更新する。

*1 : 確認したバージョンは 4.103

使用方法

使用例

・読み込んだパスワードを送信する場合
getpassword 'password.dat' 'mypassword' password
connect 'myhost'
wait 'login:'
sendln 'myname'
wait 'password:'
sendln password
・読み出しに失敗した場合
expandenv str "%USERPROFILE%\myfile.dat"
getpassword str 'mypassword' password
if !result then
	messagebox 'Password was not saved' 'ERROR'
endif

サンプル

以下のサンプルが存在します。

備考

特にありません。