Perlについての質問箱 18箱目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2005/07/20(水) 05:15:36"There's more than one way to do it" ということで、Perlの奥深さについて皆で語り合い、追求してまいりましょう。
CGIについての質問は板違いです。WEBプログラミング板でどうぞ。
CGIとPerlの区別がつかない人もWEBプログラミング板に行ってください。
(WEBプログラミング板 http://pc8.2ch.net/php/ )
CGIの質問は答えがPerlと全然関係ない話に帰着する場合が多かったりするのでWEBプログラミング板に行って聞いたほうが得ですよ。
このスレでは(CGI以外の)純粋にPerlのみに関係する質問を取り扱っていこうと思います。
http://www.perl.org/get.html
● 2005/03/17現在の最新版: 5.8.7
● 2005/03/17現在の開発版: 5.9.2
0002デフォルトの名無しさん
2005/07/20(水) 05:23:091 http://pc.2ch.net/tech/kako/1017/10177/1017736187.html
2 http://pc3.2ch.net/tech/kako/1033/10336/1033688230.html
3 http://pc2.2ch.net/tech/kako/1041/10412/1041205885.html
4 http://pc2.2ch.net/tech/kako/1048/10485/1048519394.html
5 http://pc5.2ch.net/tech/kako/1053/10530/1053053082.html
6 http://pc5.2ch.net/tech/kako/1060/10606/1060689008.html
7 http://pc2.2ch.net/test/read.cgi/tech/1068051036/
8 http://pc2.2ch.net/test/read.cgi/tech/1074151549/
9 http://pc5.2ch.net/test/read.cgi/tech/1079114157/
0003デフォルトの名無しさん
2005/07/20(水) 05:24:2411 http://pc5.2ch.net/test/read.cgi/tech/1090889189/
12 http://pc5.2ch.net/test/read.cgi/tech/1094579428/
13 http://pc5.2ch.net/test/read.cgi/tech/1097851764/
14 http://pc5.2ch.net/test/read.cgi/tech/1101649274/
15 http://pc5.2ch.net/test/read.cgi/tech/1105953092/
16 http://pc8.2ch.net/test/read.cgi/tech/1111034732/
17 http://pc8.2ch.net/test/read.cgi/tech/1117870308/
0004デフォルトの名無しさん
2005/07/20(水) 05:30:09Perlプログラミング講座: http://www5a.biglobe.ne.jp/~n_rieko/perl/
[本]
リャマ: http://www.oreilly.co.jp/books/4873111269/
駱駝: http://www.oreilly.co.jp/books/4873110963/
Effective Perl: http://www.ascii.co.jp/books/detail/4-7561/4-7561-3057-7.html
クックブック: http://www.oreilly.co.jp/books/4873110378/
[オンラインマニュアル]
Perldoc.com: http://www.perldoc.com/
perldoc.jp: http://www.perldoc.jp/
perl5.005_03 のドキュメント: http://www.kt.rim.or.jp/~kbk/perl5.005/
[モジュール]
CPAN.com: http://search.cpan.org/
河馬屋二千年堂: http://homepage3.nifty.com/hippo2000/
[テクニック]
Perlメモ: http://www.din.or.jp/~ohzaki/perl.htm
Perlのページ: http://homepage1.nifty.com/nomenclator/perl/
Perlの小技: http://homepage3.nifty.com/hippo2000/perltips/index.htm
0005デフォルトの名無しさん
2005/07/20(水) 05:35:48ttp://www.pure.ne.jp/~learner/program/Perl_unicode.html
ttp://www.namazu.org/~tsuchiya/perl/perl-5.8.html
ttp://www.lr.pi.titech.ac.jp/~abekawa/perl/perl_unicode.html
0006デフォルトの名無しさん
2005/07/20(水) 07:14:07[プログラミング自体の経験が無い奴はまずココを読め] (移転)
Perlプログラミング講座: http://www.site-cooler.com/kwl/perl/
[オンラインマニュアル] (追加)
最新のドキュメント: http://search.cpan.org/~nwclark/perl-5.8.7/
perl5.8.xのドキュメント(一部): http://www.kt.rim.or.jp/~kbk/perl-5.8/
日本語ドキュメント検索: http://search.cpan.jp/
0007デフォルトの名無しさん
2005/07/20(水) 19:40:030008デフォルトの名無しさん
2005/07/20(水) 23:51:45あと10年もすれば流行りの言語を尻目に枯れ果てて/binにまで落ち、
ニッポンの勘定系のバッチでも使えるようになっているだろうさ。
0009デフォルトの名無しさん
2005/07/21(木) 00:37:10これにインクリメントして$a="\x83\x41"にしたいのですができません。
どうすればいいのでしょうか?
ちなみに
$x="\x83";$y="\x40";$a=$x.$y;
はうまくいきますが
$x="\x83";$y="\x";$z="40";$a=$x.$y.$z;
はだめです。シングルクオーテーションや.を+にしたりしましたがだめでした。
0010デフォルトの名無しさん
2005/07/21(木) 00:41:47$test = <FH>;
@test = <FH>;
close(FH);
$test=<FH>は最初の一行だけ読み込み、@test = <FH>は全行読み込むと知ったのですが、
"sample.txt"が同じ文字列が10万行であると仮定して、$test = <FH>とtest =<FH>の負荷は10万倍になるのでしょうか?
0011デフォルトの名無しさん
2005/07/21(木) 00:42:38(1)
unpack/pack または ord/chr
(2)
unpack/pack または ord/chr&hex
0012デフォルトの名無しさん
2005/07/21(木) 00:43:51「負荷」が何を指すのか不明だが、
メモリ消費はは10万倍になるな。当然だが。
0013デフォルトの名無しさん
2005/07/21(木) 01:02:25ヒントありがとうございます。
0014デフォルトの名無しさん
2005/07/21(木) 01:26:26ありがとうございます。
趣味のプログラムなのでよい言葉が浮かばなかったのであやふやな表現になりました。
CPU使用率の意味で使ったつもりです。
0015デフォルトの名無しさん
2005/07/21(木) 01:34:02Perlメモには
srand;
open(FILE, "< $file");
rand($.) < 1 and $line = $_ while <FILE>;
close(FILE);
print $line;
でファイルからランダムに1行選択できる、とありましたが
10行選択したい場合はどのように記述すればよいのでしょうか。
0016デフォルトの名無しさん
2005/07/21(木) 11:59:08>このスクリプトではファイル全体をメモリに読み込まないので
>少ないメモリで実行させることができます.
>また,ファイルの行数があらかじめわかっている必要もありません.
Perlメモのこの考え方だとこう?自信ナサス
識者の方々採点おながいします
$hoge=10;
@array=();
srand;
open(FILE, "< $file");
while (<FILE>) {
if ( rand($.) < $hoge ) {
if ( $. <= $hoge ) {
push @array, $_;
}
else {
$array[int(rand($hoge))] = $_;
}
}
}
close(FILE);
print @array;
0017デフォルトの名無しさん
2005/07/21(木) 12:42:37行の前後関係を保とうとするとさらに一工夫
必要かな。
0018デフォルトの名無しさん
2005/07/21(木) 14:52:24@array = ();
$max = 10;
$n = 0;
srand;
open(FILE, "< $file");
rand($.) < 1 and $array[($n <= $max) ? $n++ : int(rand $max)] = [$_, $.] while <FILE>;
close(FILE);
@array = map { $_->[0] } sort { $a->[1] <=> $b->[1] } @array;
print @array;
て感じかな(未確認)。
0019デフォルトの名無しさん
2005/07/21(木) 14:52:54$n < $max
だな。
0020デフォルトの名無しさん
2005/07/21(木) 15:07:46呼び出すperlスクリプトがあります。solaris9だと上手く動いている
(ように見える)のですが、FreeBSD5.4だと時々thread内で無限ループ
らしき状況に陥ります(ちゃんと動くときもあります)
かたっぱしからprintfを入れてどこで止まってるかを調べてみると、
open文の個所でコマンドを呼び出し中(コマンドは実行されていない)
で止まっています。
単純な
for($i=0;$i<1000;$i++) {
threads->new(\&a,"foo");
};
foreach (threads->list) {
$_->join;
}
sub a {
open(FILE,"echo @_|");
}
だと問題なく動作します。
両OSともperl5.8.7、thread関連はperl -Vの出力では
usethreads=define use5005threads=undef useithreads=define
となっています。
スクリプトの問題なのか、perlの問題なのか、FreeBSDの問題なのか切り分け
ようと思うのですが、どこから手を付けたらよいのでしょうか。
0021デフォルトの名無しさん
2005/07/21(木) 15:32:09ユーザ当たりのプロセス数制限やファイルディスクリプタ数制限に
引っかかってるのかも知れず。そうだとしたら OS 側の設定の問題。
多少面倒でも外部コマンドを使わず組込関数で処理した方がいい
かもね。
002218
2005/07/21(木) 15:54:27($n < $max or rand($.) < 1) and $array[($n < $max) ? $n++ : int(rand $max)] = [$_, $.] while <FILE>;
じゃないといかんな。
0023デフォルトの名無しさん
2005/07/21(木) 16:14:29新しいのをpushするという方法もありそうだ。
002420
2005/07/21(木) 20:08:40独自プロトコルのTCP通信もやっている関係上、組み込み関数だとsocketから作らなきゃならないので
処理能力的にハードルが高いのです(送受信はそうでもないのですが、メッセージの構築に時間が掛かるので)
OS側の制限ならopen時にerrorで終了してもよさそうなんですが、無限ループ状態(もしかしたら
数時間待てば返ってくるのかも)のままなんですよね。
perlスクリプト内でカーネル内メモリを読み出す、なんて出来るんでしょうか?
外部プログラムから読むのであれば、またopenしなきゃなりませんし。。。
0025デフォルトの名無しさん
2005/07/21(木) 20:24:31Perlのライブラリやモジュールなんてthreadのこと
考慮してないのがほとんどだろ
0026デフォルトの名無しさん
2005/07/21(木) 20:43:30fork(2) のコストだってかなりのもんなのではないかとか
0027デフォルトの名無しさん
2005/07/21(木) 20:43:47openでパイプが開いて、処理がPerl側に戻ってくる前に、
プロセスが一杯になってるのでは。
それだとopenはエラーを返さない可能性があると思うけど。
21の言っているように、開けるプロセス数を増やしてみては。
0028デフォルトの名無しさん
2005/07/21(木) 21:04:59eval, die, alart 使ってtimeoutしたら例外飛ばすとか。
とにかくまずはプロセス数の設定を確認・増やしてみて
様子を見るのが一番だと思うけど。
0029デフォルトの名無しさん
2005/07/21(木) 22:01:43use constantによる定数定義をまとめたファイルがあって
それを一度だけrequireして使いたいのですが、
useの有効期限がファイルの終わりまでなので、
requireする側のファイルでは無効になってしまいます。
ファイル間を越えてグローバルに定数を扱うにはどうしたら
良いでしょうか?識者のご意見をお聞かせください!
0030デフォルトの名無しさん
2005/07/21(木) 22:24:59> useの有効期限がファイルの終わりまでなので
これがあるから釣りだと思われたんじゃないか?
BEGIN{
require 'constants.pl';
}
0031デフォルトの名無しさん
2005/07/21(木) 22:28:23[Hoge.pm]
package Hoge;
use base qw(Exporter);
our @EXPORT = qw(HOGE HIGE HAGE);
use constant HOGE => "a";
use constant HIGE => "b";
use constant HAGE => "c";
1;
---
use Hoge;
print HOGE, HIGE, HAGE, "\n";
003215
2005/07/21(木) 22:28:30回答ありがとうございます。
実は時間が差し迫っていたこともあり、実際に書いたコードは
全部ロードしてから n 回選択、と適当な処理にしてしまいました。(趣味のコードです)
最初、私も配列に push していくことを考えていたのですが、
同じ変数に代入し続けないと“結果として確率が均等”が再現できない、と感じて
#open my $fh, "> test"; print $fh join "\n", (1 .. 1000); close $fh;
my @array = ();
my $max = 10;
srand;
open my $fh, "< test";
while (my $line = <$fh>) {
for (my $i = 0; $i < $max; ++$i) {
$array[$i] = $line if rand $. < 1;
}
}
close $fh;
print join "", @array;
こんな風に考えていました。バラバラに代入していく方法でも確率は均等になるのでしょうか。
003315
2005/07/21(木) 22:31:23my @array = ([0=>0]);
my $max = 10;
my $n = 0;
my $rand;
srand;
open my $fh, "< test";
while (my $line = <$fh>) {
$rand = rand;
if ($rand > $array[$#array]->[0]) {
push @array, [$rand, $line];
@array = sort { $b->[0] <=> $a->[0] } @array;
pop @array if ++$n >= $max;
}
}
close $fh;
print join "", map { $_->[1] } @array;
0034デフォルトの名無しさん
2005/07/21(木) 22:43:21俺もExporter使えと誰かが答えていたのを見たような覚えがある。
ところで、ourで@EXPORTなら、pakcage無しで main に入れて
>>30
みたいにするのと変わりが無いかも…。
0035デフォルトの名無しさん
2005/07/21(木) 22:54:58擬似的に定数っぽく見せてるだけなんだよね(あってる?)。
0036デフォルトの名無しさん
2005/07/21(木) 23:03:18基本的には sub NAME { 'value' } というのを作るだけ。> constant
但しこういう中身が一つのリテラルだけのサブルーチンはコンパイル時に
最適化され、関数を呼び出してる部分に値がインライン展開されるので、
実行時には最初から定数を書いてるのと同じになる。
perl -MO=Deparse script として、どういう風に最適化されるか調べてみ。
0037デフォルトの名無しさん
2005/07/21(木) 23:13:09やっぱそうか。
もともと同じ名前で関数実装する以外、定数定義する方法が無かったもんね。
そんな実行オプションがあるとは知らなかった。感謝。
なんか use base Exporter; にしても constant にしても、
Perl の歴史(というのか、微妙な努力というか…)を見るようだ。
0038デフォルトの名無しさん
2005/07/21(木) 23:25:58# もーちょっとやりよーはなかったのかよ……。
0039デフォルトの名無しさん
2005/07/21(木) 23:30:01レス見てたら
use base 'constants.pl';
で逝けそうな気がしてきた。
どうしてもrequireしたい(条件によってファイルを変えるなど)のなら
require 'constants.pl';
@ISA = qw( constants.pl );
じゃ?
また試せる環境にないから投げっぱなしジャーマンスープレックス的レスなんだが。
0040デフォルトの名無しさん
2005/07/21(木) 23:39:48…おまえ、Perlの継承システムを全然理解して無いだろ。
0041デフォルトの名無しさん
2005/07/21(木) 23:58:01禿同
ブロックのeval、もうメチャクチャ。
Error.pm も微妙だけど、そのうちこういうのも吸収されていくのかね。
004239
2005/07/22(金) 00:39:22OOPでもそうでなくてもuse base か@ISA指定でサブルーチンが継承されるのは確認してるよ。
それが正しいかどうかは脇に置くけどね。Exporter自体好きじゃない。
0043デフォルトの名無しさん
2005/07/22(金) 01:16:36…何言ってんだか。>>38ははっきり言って無茶苦茶だぞ。
1.baseプラグマへの引数はファイル名ではなくパッケージ名
2.@ISAへ入れる文字列はファイル名ではなくパッケージ名
3.継承されるのは「メソッド」である。(*)
* 実体はサブルーチンだが、呼び出される過程が全く違うため区別して考える必要がある。
具体的には、継承したメソッドは必ず$class->method()としなければならなず、
「継承」であるため定数サブルーチンであっても「インライン展開」はされない。
定数サブルーチンの場合は結果は同じだが、引数を取る「非メソッドサブルーチン」を
継承しても、メソッドコール構文で呼び出すことは出来ない。
(というか、呼び出しても意味のある結果は得られない。)
0044デフォルトの名無しさん
2005/07/22(金) 01:35:12俺は一応40ではないが。
>>39
を推測。
ひょっとして他の人のレス読んで、constantがサブルーチンなら
use base で呼び出し元のクラスの上(かmain::)に入れようと思ったとか?
ただしpackageは切っといて、Exporter使わない方向で
(rubyのmoduleみたいなもんかな)。
継承させる意味は無いけどな。
ただそれだとmainパッケージに入っていても、main->Const みたいにしか呼べないぞ。
一応、試してはみたが。
004539
2005/07/22(金) 02:33:49継承がパッケージ単位であることはさすがに知ってるよ。
みんな".pl"って時点でpackage化されていない外部ファイルって言う理解なのね?
use base 'constants.pl';
@ISA = qw( constants.pl );
この辺りはファイル名変えるのだりぃから違和感感じながら適当にコピペした。
言いたいことだけ伝わると思ったのよぉ
0046デフォルトの名無しさん
2005/07/22(金) 02:36:41C++/Javaのtry-catchだって
「やってみてだめなら例外投げるから受けとれ」
なんだから、ブロックのeval+$@そのものじゃないか。
入力値のバリデーションの定型句、型キャストに失敗したら
エラーだねって処理なんかスゲー乱暴で好きになれん。
# あくまで好みの問題なんだけどね。
# オフショアで隣国に投げるとき(時間も予算も限られてて
# コーダーに余計なこと考えてほしくない時)なんかは
# try-catchのほうが楽だよな
004720
2005/07/22(金) 13:58:49問題ないのかと思います。
---
#!/usr/bin/perl -w
use threads;
for ($i=0;$i<1000;$i++) {
threads->new(\&a,$i);
}
foreach (threads->list) {
$_->join;
}
sub a {
open(FILE,"(sleep 20;echo @_;sleep 20)|");
@a=<FILE>;
close(FILE);
}
---
004820
2005/07/22(金) 14:00:37---
cputime unlimited
filesize unlimited
datasize 524288 kbytes
stacksize 65536 kbytes
coredumpsize unlimited
memoryuse unlimited
vmemoryuse unlimited
descriptors 39146
memorylocked unlimited
maxproc 19573
sbsize unlimited
---
openで止まっているのは分かったので
open(FILE,"/usr/local/bin/hoge $_|)||return -1;
を
print LOG "opening $thread_id\n";
open(FILE,"/usr/local/bin/hoge.sh $_|)||return -1;
hoge.sh
#!/bin/sh
echo $@ >>/tmp/log
exec /usr/local/bin/hoge $@
と変更し無限ループに見える状況が発生すると、perl側のlogにはopen直前まで来た記録が在りますが、hoge.sh側のlogには記録がありませんので、open文の中身が実行されてないように見えます。
perl側でshellを起動したあとに固まっているのか、shellを起動しようとして固まっているのか、
どうやって調べましょう????
004920
2005/07/22(金) 14:02:27元組込屋なせいかthread safeかどうかは信用できない(w
ので、threads以外はモジュールは使ってません。
#なので、外部プログラムに任せようとしてはまっている、と
新たに言語を覚えるのはきついけど、半端にperlと組み合わせる
よりも全部C++で書き直すほうが早いのかな。。。
>>26
topだと
23526 user 114 0 18100K 16312K CPU1 1 6:15 99.02% 99.02% perl
23472 user 20 0 37156K 33748K kserel 0 2:43 0.00% 0.00% perl
という感じになってます。これがずーっとCPUを占有し続けます。
>>27
上記のようにパイプが開けてないように見えるのです。
プロセス数的には問題ないので(上のサンプルでも動くくらいですし)
どこが悪いんだか?
>>28
thread数の制限は考えたのですが、ちょっと勉強中でして。
socketみたいにselectすればいいのは分かるんですが、
joinするとthreadが終わるまで待ち続けてしまうし。。。
#detachして終わったら共有メモリにでもflagを立てればいいのかな?
0050デフォルトの名無しさん
2005/07/22(金) 14:11:01> perl側でshellを起動したあとに固まっているのか、shellを起動しようとして固まっているのか、
> どうやって調べましょう????
lastcommを有効にすれば一発。
0051デフォルトの名無しさん
2005/07/22(金) 17:15:040052デフォルトの名無しさん
2005/07/22(金) 17:23:10たぶん
・evalの使い方が本来と違っているので違和感がありすぎる
・飛んでくる例外が$@のメッセージというのが気に入らない
という事でしょう。
まぁ eval, $@で例外処理ができるというのは、代替案が無いよりマシ。
0053デフォルトの名無しさん
2005/07/22(金) 21:19:17try{ code }でよかったのに。
0054デフォルトの名無しさん
2005/07/22(金) 21:35:40> eval EXPR と eval BLOCK
その辺のコンテキスト判断がどの言語より人間の意識に近い
(期待通りになる)んでPerlはすごく気持ち良いんだな〜。
$count = @array;
とか。ほかの言語から入ったときまず面食らうのがここなんだが。
0055デフォルトの名無しさん
2005/07/22(金) 21:38:30> どの言語より人間の意識に近い
そうかな〜?
0056デフォルトの名無しさん
2005/07/22(金) 21:44:47趣味で書いてるなら別にどうなってても良いんだけどねぇ。
仕事のはそうはいかない。
新人実戦投入で教えなきゃいけない時とか、他の人のコード読む時に、
いかにもPerlな「こんなのもできるぜコード」があるとすごく困る。
0057デフォルトの名無しさん
2005/07/22(金) 22:16:10だからスラングみたいなのがあるのは仕方ない。
0058デフォルトの名無しさん
2005/07/22(金) 22:17:44コンソールを非表示とか最小化状態で起動するにはどうすればいいですか?
0059デフォルトの名無しさん
2005/07/22(金) 22:21:32chomp (my $dummy = $q->param('content') );
とかな。(´ー`)
そこでコーディング規約なんだが、
強制で規約守らせちまうツールがないんだよな。
EclipseのEPICがもうちょっと良くなってくれれば
いいんだが。。。
0060デフォルトの名無しさん
2005/07/22(金) 23:18:31wperl.exe使うとか?
0061デフォルトの名無しさん
2005/07/23(土) 15:54:23BEGIN {
if ( $^O eq 'MSWin32' ) {
require Win32::Console;
Win32::Console::Free();
}
}
0062デフォルトの名無しさん
2005/07/23(土) 19:05:10use strictとかuse warningsを使う場合、
モジュールの呼び出し元のファイルで一回記述しておけば
呼び出し側ではやらなくても良いのでしょうか?
それともファイル毎に記述すべきですか?
006362
2005/07/23(土) 19:07:27すいません質問です。
use strictとかuse warningsを使う場合、
モジュールの呼び出し元のファイルで一回記述しておけば
モジュール側では記述しなくても良いのでしょうか?
それともファイル毎に記述すべきですか?
0064デフォルトの名無しさん
2005/07/23(土) 19:14:47strict/warningsの有効範囲はプログラム全体でもファイル全体でもなく「ブロック」。
そのくらい試せよ。
0066デフォルトの名無しさん
2005/07/24(日) 00:09:000067デフォルトの名無しさん
2005/07/24(日) 01:33:07>>61
有り難うございます。両方出来ました。
0068デフォルトの名無しさん
2005/07/24(日) 02:09:51インストールし直して見てもダメだったのですが、お知恵をお借りできませんか?
WinXPにActivePerl-5.8.7.813-MSWin32-x86-148120.msiとapache_1.3.33-win32-x86-no_src.msiをインストールしました。
DOS窓でPerl -vした場合も、ちゃんとメッセージが返ってきます。
0069デフォルトの名無しさん
2005/07/24(日) 02:24:23ヒント。
・httpd.confの設定
・+ExecCGI
・ScriptAlias
あとはWebProg板のほうが適切と思われ。
0070デフォルトの名無しさん
2005/07/24(日) 02:24:49それはおそらく、Perlの問題ではなくApatchの設定の問題だと思われます。
また、>>1をご覧になるとわかる通りCGIに関する質問は板違いになるので
Webプログラム板でされた方が回答が得易いかと思われます。
007168
2005/07/24(日) 09:53:48↑これでした。
ありがとう。
板違いだったようで、失礼しました。
0072デフォルトの名無しさん
2005/07/24(日) 15:57:250073デフォルトの名無しさん
2005/07/24(日) 17:08:540074デフォルトの名無しさん
2005/07/24(日) 17:40:510075デフォルトの名無しさん
2005/07/24(日) 18:18:50味噌糞ぐちゃぐちゃ病気言語を自認するPerlとの相性はぴったりだな
0076デフォルトの名無しさん
2005/07/24(日) 18:19:250077デフォルトの名無しさん
2005/07/24(日) 18:21:34NCSA httpd
0078デフォルトの名無しさん
2005/07/24(日) 19:07:32hogeだったとしてスカラー変数$tmpに'hoge($arg)'と代入して、その後
eva $tmp
とすると、Too many argumentsがでます。evalで使用しない場合はでないの
ですが・・・
あとサブルーチンのプロトタイプ宣言をするとToo many argumentsはでなく
なりますね。
これはどういう理屈なのでしょうか?
0079デフォルトの名無しさん
2005/07/24(日) 19:35:230080デフォルトの名無しさん
2005/07/24(日) 19:37:40質問は日本語で書け
0081デフォルトの名無しさん
2005/07/24(日) 20:18:35できるだろうからそれをきっちりさらしてもらった
ほうがいいな。
0082デフォルトの名無しさん
2005/07/24(日) 20:50:52気づいたことがあったので、ぷろPでちょろっと調べたら
事故解決しますたw
0083デフォルトの名無しさん
2005/07/24(日) 22:09:42二度とくるな
0084デフォルトの名無しさん
2005/07/25(月) 12:41:39Perlスクリプトhoge.plを書きまして
Linuxのシェル上から
$ w3m `hoge.pl うんこ`
みたいにすれば文字列「うんこ」の検索結果が表示できるようにしたのですが、
hoge.pl内部にて
system "w3m $uri"; #$uriは作成されたURIの文字列
みたいにして
$hoge.pl うんこ
だけで同様の動作を得ようとすると
Error occured while reset 800b: errno=5
と表示されまともに動作しないのです。アレならhoge.plの中身書きますが、
とりあえずどういう不具合が考えられるでしょうか?
008584
2005/07/25(月) 12:59:21大変失礼しました。
0086デフォルトの名無しさん
2005/07/25(月) 14:45:230087デフォルトの名無しさん
2005/07/25(月) 14:50:070088デフォルトの名無しさん
2005/07/25(月) 15:01:42無名サブルーチンへのリファレンスとか?
0089デフォルトの名無しさん
2005/07/25(月) 15:30:29・現在のコード
・その「関数を変数として扱った」場合の呼び出しコード(希望でよいので)
・どうしてそのように扱いたいのか
を列挙してみましょう。
これらを整理すると、整理中に自己解決したり、検索すべきキーワードが
浮かんだりしますよ。
0090デフォルトの名無しさん
2005/07/25(月) 17:23:15こういう人を見るとホント夏を実感するねえ。
バカだなー、まあ子供だからしょうがないかって。
0091デフォルトの名無しさん
2005/07/25(月) 19:26:330092デフォルトの名無しさん
2005/07/25(月) 19:59:00patches がずらずらでてくるのですが、このようなパッチってどこから入手で
きるのでしょうか?
Locally applied patches:
9676 Port the OpenBSD glob() security patch
9678 Addendum to #9676: some missing changes from OpenBSD glob.c
9679 Up $File::Glob::VERSION, add OpenBSD glob version note
9693 $VERSION and Version() on same line provokes CPAN.pm warning
9706 #7210 broke .packlist generation
9707 ExtUtils::Installed doesn't quote regex metacharacters in paths
9775 Typo in utf8.h
9950 Revert integration of #8254,#8255 in #8620 (causes coredump)
0093デフォルトの名無しさん
2005/07/26(火) 23:02:49にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0094デフォルトの名無しさん
2005/07/26(火) 23:06:15にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0095デフォルトの名無しさん
2005/07/26(火) 23:08:12にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0096デフォルトの名無しさん
2005/07/26(火) 23:10:18にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0097デフォルトの名無しさん
2005/07/26(火) 23:11:53にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0098デフォルトの名無しさん
2005/07/26(火) 23:14:120099デフォルトの名無しさん
2005/07/26(火) 23:17:05にて質問したのですが回答を得られなかったためこちらでも質問させて下さいm(_ _)m
----
ajaxを用いてある程度インタラクティブなweb telnetみたいな物を作りたいのですが
持続的なコネクションを確保する場合方向性としては、どっかのPORTにlistenする
デーモン的なプログラムとユーザーからのアクションやセッションを司るプログラムを
組み合わせるような方法がベターなのでしょうか。
mod_perlもいいかなと思ったのですが必ず前回アクセスしたプロセスにアクセス出来るとは
限らないので無理そうです。
listenしなくても常駐させてpidを記録しておき、別プログラムからpidの情報を元に操れたり
する事は出来ますか?
0100デフォルトの名無しさん
2005/07/26(火) 23:23:20連投いい加減にせいよ(゚Д゚)ゴルァ!!
原因と再発防止策をここに書け。
0101デフォルトの名無しさん
2005/07/26(火) 23:28:56連投いい加減にせいよ(゚Д゚)ゴルァ!!
原因と再発防止策をここに書け。
■ このスレッドは過去ログ倉庫に格納されています