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に戻る
ブログに戻る

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