0

私はperlスクリプトを初めて使用します。以下のコードは、sftpサーバーからファイルをダウンロードしています。

#!/usr/bin/perl

use strict;
use warnings;
use Net::SFTP::Foreign;

my $sftp = Net::SFTP::Foreign->new(
    'auser@sftp.rent.com',
    password => 'auser123',
    more     => ['-v']
);

$sftp->get('outgoing/DATA.ZIP', '/home/sar/')
  or die "unable to retrieve copy: ".$sftp->error;

$sftp->disconnect;

ここでパスワードをハードコードしました。スクリプトでパスワードを回避したいのですが、ファイルからパスワードを読み取る他の方法はありますか、それとも方法はありますか?

スタックオーバーフローとグーグルで検索しましたが、これの使い方がわかりません。1つ下にしてみました。

PASSWORD=`cat /home/sar/passwd_file.txt`

my $password = $ENV{'PASSWORD'}

このコードを解決するのを手伝ってください。

4

2 に答える 2

0

あなたが概説したようにそれを行うには、最初にそのPASSWORD環境変数設定コマンドを実行するシェルスクリプトを作成してから、書いているperlスクリプトを起動します。もちろん、見つけた 2 番目の (perl) 行をスクリプトに組み込みます。

ただし、それほど安全ではありません。他の形式の認証の使用を検討する必要があります。

于 2013-09-18T11:48:01.310 に答える