TWクラブ【BloodyRosary】@13.SFTP関連
このページは合ってるかどうかわからないです。
ぶっちゃけ奇跡的に動いたというほうが・・・。
sftp test1@111.11.11.111 (超適当
sftp SFTPを起動
test1 これはユーザー名
111.11.11.111 IPアドレス サーバ名でもいい(ftp.xxxxx.co.jp 等)
sftp -b sftpbatch.-o IdentityFile=id_dsa txt test1@111.11.11.111:/data/work
-b sftpbatch バッチファイル起動。バッチファイルにUNIXコマンドが入ってると、それを動かす。
-o IdentityFile=id_dsa 秘密鍵指定。これやるとパスフレーズ省略?
/data/work リモートホストのパスが指定できる。
・lcd ローカルホストのディレクトリ変更
例
lcd /export/home/work
ローカルホストのディレクトリを /export/home/work に変更する
・cd リモートホストのディレクトリ変更
例
cd /data/work
リモートホストのディレクトリを /data/work に変更する
・put ローカルホストからリモートホストへファイルをアップロードする。
例
put test.txt
この際、前もってローカルホストとリモートホストのディレクトリを指定する必要がある。
・get リモートホストからローカルホストへファイルをダウンロードする。
例
get test2.txt
この際、前もってローカルホストとリモートホストのディレクトリを指定する必要がある。
・lls ローカルホストの作業ディレクトリ内のファイル・ディレクトリ一覧を表示
例
lls
・ls リモートホストの作業ディレクトリ内のファイル・ディレクトリ一覧を表示
例
ls
Net::SFTPについて
Linuxに以下を入れるとできる????
Net-SFTP-0.10.tar.gz
Net-SSH-Perl-1.34.tar.gz
pari-2.3.4.tar.gz
Math-Pari-2.010801.tar.gz
Math-BigInt-Pari-1.13.tar.gz
Crypt-DH-0.06.tar.gz
Digest-SHA1-2.11.tar.gz
Digest-HMAC-1.01.tar.gz
Crypt-DES-2.05.tar.gz
Math-BigInt-GMP-1.24.tar.gz
これらを任意のフォルダに入れて、以下をroot権限で実行
gzip -dc Net-SFTP-0.10.tar.gz | tar xvf -
cd Net-SFTP-0.10
perl Makefile.PL
make
make test
make install
gzip -dc Net-SSH-Perl-1.34.tar.gz | tar xvf -
cd Net-SSH-Perl-1.34
perl Makefile.PL
make
make test
make install
tar zxvf pari-2.3.4.tar.gz
cd pari-2.3.4
./Configure --static
make all
make bench
make install
gzip -dc Math-Pari-2.010801.tar.gz | tar xvf -
cd Math-Pari-2.010801
perl Makefile.PL
make
make test
make install
gzip -dc Math-BigInt-Pari-1.13.tar.gz | tar xvf -
cd Math-BigInt-Pari-1.13
perl Makefile.PL
make
make test
make install
gzip -dc Crypt-DH-0.06.tar.gz | tar xvf -
cd Crypt-DH-0.06
perl Makefile.PL
make
make test
make install
gzip -dc Digest-SHA1-2.11.tar.gz | tar xvf -
cd Digest-SHA1-2.11
perl Makefile.PL
make
make test
make install
gzip -dc Digest-HMAC-1.01.tar.gz | tar xvf -
cd Digest-HMAC-1.01
perl Makefile.PL
make
make test
make install
gzip -dc Crypt-DES-2.05.tar.gz | tar xvf -
cd Crypt-DES-2.05
perl Makefile.PL
make
make test
make install
tar zxvf Math-BigInt-GMP-1.24.tar.gz
cd Math-BigInt-GMP-1.24
perl Makefile.PL
make
make test
make install
実行例
# my %arg = ('user'=>$UserID, 'password'=>$PASSWORD, 'debug'=>1); これはデバッグが必要な場合
my %arg = ('user'=>$UserID, 'password'=>$PASSWORD); SFTP接続のための情報セット
$UserIDはユーザ名 一番上での例で言うと、work
$PASSWORDはユーザ認証のほうのパスワード 公開鍵のパスフレーズ省略が前提???
$sftp = Net::SFTP->new($ServerName, %arg) %argに設定したuserとpasswordを使い、オブジェクト生成
$ServerNameはサーバ名 一番上での例で言うと 111.11.11.111
$sftp->put($BO_File, $Connect_File) アップロード操作
$BO_Fileはアップロード元のファイル名を含めたフルパス名。
たとえば、/export/home/data/work/test.txt など
$Connect_Fileはアップロード先のファイル名を含めたフルパス名。
たとえば、/export/home/work/test.txt など(イメージ的には、mv ではなく cp か
$sftp->get($Connect_File, $BO_File) ダウンロード操作
アップロードと基本変わらない
ただし、ダウンロード元、つまり接続先のフルパスを最初に書き、
ダウンロード先のフルパスを次に書くのがポイント
Perl目次に戻る
別館TOPに戻る
ブログに戻る

Presents by 【BloodyRosary】
Copyrights (C) NEXON Corporation and NEXON Co., Ltd.
All Rights Reserved.