自動化された非対話型 Python スクリプトを使用してコンパイルした後、2 つのプログラムをあるサーバーから別のサーバーにコピーする必要があります。このスクリプトは会社のサーバー上の複数のユーザー用であり、キーとパスワードの両方が必要であるため、キーはオプションではありません。パスワードはプログラムに保存されませんが、getpass() を使用してプログラムの開始時に 1 回要求され、ユーザーが scp 呼び出しごとにパスワードを入力する必要がないように両方の SCP 転送に使用されます。私はscpを呼び出すためにos.systemを使用しています:
os.system("/usr/bin/scp %s %s@server:directory" %(prg, uname))
os.system("/usr/bin/scp %s %s@server:directory2" %(prg2, uname))
scp は別のプログラム用に定義されているため、/usr/bin/scp. prg/prg2 はプログラムの場所で、uname はリモート サーバー上のユーザーのユーザー名です。
here で説明されているように、パスワードをパイプしようとしましたが、うまくいきませんでした。
sshpass、expect、paramiko、または fabric をインストールできず、受信サーバーにインストールされていない rsync b/c を使用できません。これを自動化するためにできることはありますか?
AIX 6.1、Python 2.6.2 を実行しています
更新: AIX の python インストール ディレクトリに /config フォルダーがないため、pexpect などの外部ライブラリをインストールできません。それを修正するには、 AIX 用の python-devel をインストールしますが、プログラムをインストールできないため、まだ行き詰っています。
更新 2: FTP を支持して SCP を放棄することにしました。これとこれを組み合わせて、FTP スクリプトを作成しました。あなたの答えと私を導くのを手伝ってくれてありがとう。