ActivePerl をちょっとテストしようとしてハマるところだった・・・

危うくハマるところだった。
つ~か、実際はちょっとハマったんだけどね(^^;

Windows 上で Perl(ActivePerl)による FTP 通信を行いたかったので、chaichanPaPaさんの「燈明日記」というブログのサンプルソースを拝借して、コマンドプロンプト画面で、

C:\Users\shimomo>perl
#!/usr/bin/perl -w
use strict;
use Net::FTP;

$url  = "192.168.XXX.XXX";
$user = "shimomo";
$pass = "hogehoge";
$dir  = "/tmp";

$ftp = Net::FTP->new($url) or die "接続失敗!$@\n";
$ftp->login($user, $pass)  or die "ログイン失敗!\n";
$ftp->cwd($dir)            or die "ディレクトリの変更失敗!\n";
print join("\n",$ftp->dir());

と、ここまで入力して、入力終了だよ!の意味で Ctrl+D してみたけど何も起こらないので、Ctrl+C した。
そしたら、

Terminating on signal SIGINT(2)

なんて言われてスクリプトが実行されないの。
いや、ま、もちろん Ctrl+C したんで SIGINT(2) なのはそうなんだけど、え?
俺が Ctrl+C したのは「ソースの入力の終了」の意味であって、ソース入力が終了したんだから、今度はスクリプトが実行されるんじゃねえの?

試しに、

C:\Users\shimomo>perl
print "Hello, World.\n";

と入力して、ここで Ctrl+C したら、ちゃんと、

Hello, World.

って表示される。signal SIGINT(2) で中断なんて出んでぇ?
もしかして、やっぱソースに問題あるのかね?とか一瞬そっちも疑ったが、上記ソースをファイル(test.pl)に書き出して実行すると、当然のことながらちゃんと実行された。

C:\Users\shimomo>perl test.pl
total 20
drwxrwxrwt  2 root      wheel  512 Dec 31 14:49 .ICE-unix
drwxrwxrwt  2 root      wheel  512 Dec 31 14:49 .X11-unix
drwxrwxrwt  2 root      wheel  512 Dec 31 14:49 .XIM-unix
drwxrwxrwt  2 root      wheel  512 Dec 31 14:49 .font-unix
<以下略>

ふーん。ようわからん。

ま、取りあえず、ファイルに出力して実行すれば大丈夫ということがわかったので、それで良いか。(良いのか?技術者として(^^;;;だって、もう、納期がキツキツなんだもの)

トラックバック(0)

このブログ記事を参照しているブログ一覧: ActivePerl をちょっとテストしようとしてハマるところだった・・・

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/1534

コメントする

このブログ記事について

このページは、shinodaが2011年4月16日 11:20に書いたブログ記事です。

ひとつ前のブログ記事は「何が幻なのかよくわからんけど、まあ、そこそこの味でした」です。

次のブログ記事は「昨日は、伊陸ひむろが久しぶりの勝利を」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら