perlでネット上にあるlzhを拾ってきてwebディレクトリに解凍するというようなバッチ、もしくはtipsはないですか?

全ての機能を満たさない部分的な機能を担う奴でもかまいません。よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/05/14 22:43:41
  • 終了:2006/05/17 13:42:20

ベストアンサー

id:dica33 No.1

dica33回答回数37ベストアンサー獲得回数32006/05/14 23:27:38

ポイント23pt

http://www.csdinc.co.jp/archiver/lib/unlha32.html

環境はわかりませんが、lzhが解凍できる環境を整えてexecしてしまってはどうでしょうか?

exec "lha e $filename"

id:kuippa

レンタル鯖なんですが…、execできるかな…。

PHPのsystemとかexecは制限されてたんですがperlだと通るかなっと…

2006/05/14 23:46:42

その他の回答(3件)

id:dica33 No.1

dica33回答回数37ベストアンサー獲得回数32006/05/14 23:27:38ここでベストアンサー

ポイント23pt

http://www.csdinc.co.jp/archiver/lib/unlha32.html

環境はわかりませんが、lzhが解凍できる環境を整えてexecしてしまってはどうでしょうか?

exec "lha e $filename"

id:kuippa

レンタル鯖なんですが…、execできるかな…。

PHPのsystemとかexecは制限されてたんですがperlだと通るかなっと…

2006/05/14 23:46:42
id:asakura-t No.2

浅倉卓司回答回数151ベストアンサー獲得回数22006/05/14 23:29:17

ポイント23pt

 ネットにあるlzhを拾うにはLWPモジュールを使うのが良いでしょう。

http://homepage3.nifty.com/hippo2000/perltips/LWP/Simple.html


 LZHを解凍するモジュールは見つかりませんでしたので、system()などを使って解凍することになると思います。

 ちなみにZIPファイルならArchive::ZIPモジュールで解凍できると思います。

http://search.cpan.org/~smpeters/Archive-Zip-1.16/lib/Archive/Zi...

id:kuippa

ファイル取得はgetでできるかな…。

lzhないっすかね…。

引き続き募集しまっす。

2006/05/14 23:49:56
id:villain No.3

villain回答回数174ベストアンサー獲得回数122006/05/14 23:52:50

ポイント22pt

Win32用のActivePerlならWinAPIなどのWin32DLLを

呼び出せるのでDLしたファイルをunlha32.dllを使用して

解凍はできると思います。

または、lha.exeを使用して解凍するとか。


UNIX/Linux環境などWin32システム以外の場合は分かりません。


id:kuippa

ういっす、ありがとうございます。

最初に環境を書くべきでしたね…。

Linuxです。

2006/05/15 00:15:29
id:villain No.4

villain回答回数174ベストアンサー獲得回数122006/05/14 23:56:24

ポイント22pt

HTTP DL の解説の方を忘れてしまいました。

以下のサイトを参考にしてください。


Perlでブラウズ(HTTP)


一人2回しか回答できないのでこれで最後です。

id:kuippa

おー、これはわかりやすいサイトですね。

バッチリです。

肝心のlzhの解凍にかんする部分があれなので質問をたてなおしました。

http://q.hatena.ne.jp/1147840715

こちらの質問は終了します。ありがとうございました。

2006/05/17 13:41:22

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません