CGIに依存しないPerlの話題一般
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@お腹いっぱい。
2001/05/31(木) 21:49ID:bKRSBFew・モジュール、オブジェクト指向プログラミング
・Perl6や.NET対応など
・各種GUIツールキット(Perl/Tk, Gtk-Perlなど)
・他言語による拡張(Inline::*, XS, Swigなど)
についてマターリと語り合うスレッドです。
#CGI関連の話題は、なるべく専用スレッドで。
0853nobodyさん
02/06/15 14:19ID:???0854nobodyさん
02/06/15 14:29ID:AknjTxRC先程お願いしましたが、まだ削除されていません
事実無根です
早急に削除して下さい
http://kaba.2ch.net/test/read.cgi/company/997171282/699
215 名前:削除屋三太郎 ★ :01/10/20 12:09 ID:???
>>213-214
http://www.2ch.net/guide/adv.html#saku_guideに、
>法人・公的機関の取り扱い
>原則放置
> 法人・企業については、社会・出来事カテゴリ内では、批判・誹謗中傷、
>インターネット内で公開されている情報、インターネット外のデータソースが不明確なもの、は全て放置です。
とありますので、放置とさせていただきます。
260 : :01/10/23 10:54 ID:iMDesK4O
> 法人・企業については、社会・出来事カテゴリ内では、批判・誹謗中傷、
>インターネット内で公開されている情報、インターネット外のデータソースが不明確なもの、は全て放置です
おいおい、データソースが不明確だからこそ削除するんだろうが(苦笑
0855nobodyさん
02/07/05 00:17ID:???08561
02/07/05 23:31ID:St7kmpIx0857japh ◆J.5V8ta6
02/07/10 16:13ID:SqtQZzsyhttp://slashdot.jp/article.pl?sid=02/07/10/057238&mode=nested
寄付したいけど金がない…
0858nobodyさん
02/07/10 16:54ID:lBfYsgML例えば100ページのファイルの中に書かれている文字を探し出して
該当する箇所の全部を一気に変換したいんです
文字列aaaa→文字列bbb
perl入ってるし、サーバー起動してMS-DOSで
処理したいディレクトリに移動してから
perl -i.bak -e "s/aaaa/bbb/g" *.txtしてもできませんでした
漏れ使い方間違ってるでしょうか?
.cgi書き換えの場合は、
perl -i.bak -e "s/aaaa/bbb/g" *.cgi
ですよね?
それからそのディレクトリの下のサブディレクトリまで一気に変換するには
どうしたらよいでしょうか?
0859japh ◆J.5V8ta6
02/07/10 21:29ID:???-pスイッチが抜けてるのと、
command.com(多分cmd.exeも)はワイルドカードの解釈をしない為だね。
ワイルドカードの解釈は、適当なモジュール作って実行前にuseさせるようにすれば良し。
面倒ならコレ(使ったこと無いけど);
http://search.cpan.org/search?mode=module&query=AutoGlob
0860858
02/07/10 23:06ID:???レス有難うございます。
そうですか、他の場面でもワイルドカード解釈しなくて変だなぁと思っていたところありました。
勉強になりました。
0861 ◆LZJ2qcRk
02/07/18 13:38ID:DwV2l5uYBarkley_DBへのtieが出来なくなっちゃって困ってるんです。
use DB_File;
tie(%db,"DB_File","./filename",O_CREAT|O_RDWR,0666) | die;
で5.005_3で動いていたのが、5.6.1ではそのまんまdieしちゃってるんです。
perl -d使ってもtie出来ない理由がわからないんです。
どこチェックすればいいんでしょう。
0862861
02/07/18 13:39ID:???0863名無しさん@お腹いっぱい。
02/07/18 14:58ID:???の間違いじゃないの?
0864861
02/07/18 15:34ID:DwV2l5uYあ、そうです。そうなってます。
0865nobodyさん
02/07/18 15:38ID:???バージョンアップしたのはPerlだけ?
dbパッケージがアップグレードされちゃったりしてると
db_dump-1.85+db_load(名前はうろ覚え)とかでDBを作り直さないと
いけないよ。
0866nobodyさん
02/07/18 15:42ID:DwV2l5uYdbアップグレードしてしまった可能性あります。
いま使っているdbというか、dbのファイルがどのバージョンで作られたものか
調べる方法ないでしょうか。
いちおう現dbはdb2_dumpで出力可能でした。
0867j
02/07/18 16:07ID:24XEpTfj0868nobodyさん
02/07/18 16:11ID:???Linuxとかだったら file filename ででない?
これまたうろ覚えで申し訳ないのだけど。
でもdb2_dumpで読み込めるんだったらまず1.85あたりだと思うけど。
とりあえずdb_dump-1.85(だかなんだか)で読み込めるかどうか
やってみたら?
0869nobodyさん
02/07/18 16:27ID:DwV2l5uYHASH Version 5ってでました。
db2_dump old_file | db_load new_file
したら file new_fileはHASH Version 7って出たので
これでたぶんアップデートは出来たんだと思いますが
このnew_fileも読み込めませんでした。
ちなみにこのへんのファイルはどれをえらんでも
db_dump185 filename では
invalid argumentがでてしまいます。
0872nobodyさん
02/07/18 16:45ID:DwV2l5uYそれ(863)は確認済み、というか転記ミスだったので。
$!ってエラーの原因ですね。
いまdieで$!出力するように書き換えたら
Invalid Argument at dbmview.pl line 10
って出ました。dbm_dump185のinvalid argumentと似てますね。
この辺かな。
0873861
02/07/18 16:48ID:DwV2l5uYhttp://member.nifty.ne.jp/hippo2000/perltips/db_file.htm
にInvalid argumentについての説明がありました。
でもここから解決はまだ遠そうだな。
0874861
02/07/18 20:19ID:???こちらも解決してない。うみゅう。
0875861
02/07/18 21:06ID:???DB_File version 1.84の
tie(%db,"DB_File","test_db")で新規にDBを作ると、
file test_db の結果は
Berkeley DB 1.85 (Hash, version 2, native byte-order)となる。
DB_File version 1.65で同様にDBを作ると、
file test_DBの結果は
Verkeley DB(Hash, version 5, native byte-order)となる。
そんなわけで、version 1.84ではversion 1.65で作ったDBは読めない。
データベースのダウングレードかDB_Fileのダウングレードが必要なのか?
(なんでこうなるのかはまだ不明。)
0876861
02/07/19 00:09ID:???自分がCPANに頼り切りっていうのこと、あまりこの問題に深く関われないことを
考慮して、とりあえずperl5.005に戻しました。悔しいけどこれで問題解決。
こんど5.6にするときは、DB関係はテキストに書き出しておこう。
0877nobodyさん
02/07/19 10:00ID:???こんなこと出来ますか?
具体的には
$num = 10;
for ($i = 1 ; $i <= $num;$i++){
などとしてこの中で
$iの値に応じたスカラー変数
$hoge1 $hoge2‥とかが使えるようにしたいんだけど
どうしたらいいんでしょう?
0878nobodyさん
02/07/19 10:14ID:???@num
0879nobodyさん
02/07/19 10:20ID:???$num =10;
for ($i = 1 ; $i <= $num;$i++){
eval "\$hoge$i = $i";
print "$i\t";
print "${'hoge'.$i}\n";
}
おかげで出来たよ 神様ありがとう。
0882????????
02/07/20 23:25ID:SBT6j5SN0883nobodyたん
02/07/21 00:14ID:???気になるのはこの点だな。
- バイナリー非互換:
主に PerlIO の導入により、 Perl 5.8 は以前の Perl 5 XS モジュール
との互換性がありません。XSを含むモジュールに関しては、再コンパイル
の必要がある点に留意してください。もちろんスクリプトに関しては以前
の Perl 5 との互換性が保たれています(以下に挙げる例外を除く)。
で、いまのところこんな感じで入っている。
/usr/bin/perl = 5.005
/usr/local/bin = v5.6.1
/usr/local/perl5.8/bin/perl = v5.8.0
うーむ。
0884nobodyさん
02/07/21 00:15ID:???0885nobodyさん
02/07/21 08:13ID:???0887nobodyさん
02/07/21 08:36ID:???次スレは要らないな。
0889nobodyさん
02/07/21 09:05ID:???自作自演と決めつけるな妄想野郎
0891nobodyさん
02/07/21 09:09ID:???___
. |(・∀・)|
. | ̄ ̄ ̄ ジサクジエン共和国
△
△l |
__△|_.田 |△_____
|__|__門_|__|_____|_____
0892nobodyさん
02/07/21 09:12ID:???まあ、せいぜいのこのスレで馴れあってテクださい。
0894nobodyさん
02/07/21 09:19ID:???まさにお馬鹿の典型書き込みで終了ですか。
その程度が程度の高いことを何ひとつ書けない
オマエの言い訳なら初めから来るなよ。
0895nobodyさん
02/07/21 09:23ID:???分析結果。
無数 件の該当事例が見つかりました。
自分が不利になったため捨てぜりふを書き逃げ出す。
厨房の典型的な逃げパターンです。
0896nobodyさん
02/07/21 09:28ID:???なんつーか以前のメンバーは何処逝ったね?
0897nobodyさん
02/07/21 09:33ID:???2chでまともな話をしようとする方が馬鹿げてると思いますがね。
貴方にとって有益でも、周りの人間から見れば低レベルで下らないことでしかない時も多いですからね。
可哀想な人だ。
0904nobodyさん
02/07/25 07:03ID:???0905nobodyさん
02/07/26 11:51ID:JxVLPbo8XSを使用してperlとCとの構造体のデータのやりとりをしたいんですが。
例えば
C側定義構造体
typedef struct data{
char aa[20];
char bb[20];
int cc;
} DATA;
というものを定義して
samp::samp1(DATA *aaa)
で受け取りたいと。
typemap T_PTROBJ
でマッピングした場合、perl側のデータの記述は
どのように行えばいいんでしょうか?
@aaa = ("11","111".1,"22","222",2);
@aaa = (["11","111".1],["22","222",2]);
この二つはためしてみてだめだったわけですが
0906nobodyさん
02/07/26 11:52ID:???Perlでパケットの受信及びデータ解析を勉強しているんですが、
IPヘッダの中の ある1バイトの中に3ビットと5ビットの2つのデータが
入っていて、それをビット単位で分割する方法が分からないんです。
今のところ $OneByte という変数に
その1バイトのデータを格納しているのですが。。。
どなたかご存知の方がいらっしゃいましたらご指南お願いします。
0912nobodyさん
02/07/26 17:03ID:???君みたいな糞厨房は消えた方がいいよ。
なにを勘違いしているのかは知らないが。
俺は>905の意図することが分かりづらい、と言っている。
>samp::samp1(DATA *aaa) #これは何? CでもなしPerlでもなし。C++ならこう書けるが。
> typemap T_PTROBJ # 何をマッピングしたのか書いていない。
>@aaa = (["11","111".1],["22","222",2]); # これは何を意図しているのか。
#aaメンバに11,bbに111,ccに1が入って...ということなのか。これでうまくいくはずはないが。
0913nobodyさん
02/07/26 17:10ID:???0917906
02/07/26 21:07ID:???あ なるほど。。ビットをシフトさせるんですね
全然思いつきませんでした。。(汗
昨日からずっと悩んでいただけに凄く嬉しいです。
ありがとうございました。
この板には1年振りぐらいに来たんですが、
ログを見ていると以前よりも煽り、叩きがひどくなっていて
正直質問しようか迷ったんですが。。
まだまだ親切な方がいるんですね また来ます。
0918nobodyさん
02/07/26 22:22ID:X9MpLpMfええとちゃんと書きます。ただしXSソースになりますが
0919905
02/07/26 22:41ID:X9MpLpMf--------------------------
#include <stdio.h>
(中略)
typedef struct data{
char aa[20];
char bb[20];
int cc;
} DATA;
MODULE = samp PACKAGE = samp
void
samp1(aaa)
DATA *aaa
CODE:
while(0){
//構造体のデータ処理
}
----------[eof]-----------
typemap(データ型定義ファイル)
--------------------------
DATA *<tab>T_PTROBJ
----------[eof]-----------
ここまでがxsのソースと、perlとの受け渡しのデータ型定義です
0920905
02/07/26 22:41ID:X9MpLpMftest.pl
--------------------------
#/use/local/bin/perl
use samp;
#Cの(xsの)ソースに引き渡すデータを作成(仮に$aaa)
&samp1($aaa)
----------[eof]-----------
起動をかけるのはtest.plで、呼び出すのが、samp::samp1()になります。
要は、perlのソースから、Cにデータを渡して処理したいのですが、その
データを構造体で受け渡ししたいということです。そのときperl側でのデー
タの定義はどうすればよいか教えて欲しかったのです。
単に要素を配列に入れるだけでは、アンマッチが発生するようです。
"自分で"書かなきゃいけないんだよ。大変だけど、Perlはそこまでは面倒を見てはくれないよ。
とりあえずtypemapファイルの構文を勉強してください。
ExtUtilsディレクトリにあるデフォルトのtypemapも参考になるよ。
0923nobodyさん
02/07/27 08:18ID:klNDdAyCtelnetを使えないレンタルサーバで使いたいので、
同じフォルダに入れるだけで使える手軽な日付計算ライブラリないですかね?
0924nobodyさん
02/07/27 20:55ID:???ファイルのタイムスタンプを変更したいのですが、可能でしょうか?
5.7はビルド出来たんだけど…。やっぱり無理せずActivePerlを待とう。
>>924
可能か否か、という答えが欲しいの?そりゃ可能だけど。
でも多分知りたいのは可能か否か、じゃ無くてutime()関数のことだよね。
Perl初心者スレでは、スレ違いを指摘したんじゃなくて、
その質問の仕方が悪い、ということを指摘されたんだと思うよ。
0926924
02/07/28 01:20ID:???>その質問の仕方が悪い、ということを指摘されたんだと思うよ。
そのままの質問だったので、書かなくても解る事をだらだら書いてうざがられるよりは良いかと思ってました・・
ボキャブラリーが少なくて申し訳ないです。
0927
02/07/28 08:14ID:0sVNzuOfDigest::MD5 をインストールしないでできますか?
CGI で使おうと思っているのですが、同じディレクトリに
上記に付属の MD5.pm を置いて use MD5; とか記述
するだけではできませんよね?
rfc1321 の日本語版は読んでみたのですが、全然
わかりませんでした。
0928nobodyさん
02/07/28 10:16ID:???多分動く。がんがれ。
0930nobodyさん
02/07/30 23:42ID:ZOuiEpQs通常であればシェルで
edquota ユーザー名 (Enter)
でエディタが起動して
Disk quotas for user okada (uid xxx):
Filesystem blocks soft hard inodes soft hard
/dev/hdax xxx xxxx xxxx xx x x
上記のテンプレートを編集する事になるのですが、
これを Perl のスクリプトで変更することはできないのでしょうか?
exp) perl ./edquota.pl ユーザー名 blocks値 soft値 hard値 inodes値 soft値 hard値・・
Linux Slackware8.0
Perl5.6 を使用しております。
それでは宜しくお願いいたします。
0931nobodyさん
02/08/05 22:26ID:???なんてのがあるらしい。使ったことはないけど。
0932マルチです
02/08/09 23:54ID:yPKlUuWH↑人がいません
Perl6でのファイルの開き方がわかりません。
おしえて!
0933nobodyさん
02/08/10 01:37ID:???そんなドラスティックな変化は望んでないんだが・・・
@arry[0]
%hash{key}
う〜ん
0934nobodyさん
02/08/10 01:42ID:???どのRFCが新しいのか分からん
後方互換性頼りで良いじゃん
0935nobodyさん
02/08/10 01:49ID:???0936932
02/08/10 01:51ID:???自分がいまテストしてるPerl6はParrotにふくまれてたやつで
昨日からopen関数が実行できねーよ!みたいな。
0937nobodyさん
02/08/10 02:30ID:???世の中の人間はアンタの50年来の嫁じゃ無いんだから
言葉に乗せなきゃ何言いたいのか解らないよ
そんなに大変ならPERL6のMLに投げてみ
HELP PLZ!!!! ってさ
0939932
02/08/10 02:37ID:???これが俺には何を言ってるのかわからん
0941nobodyさん
02/08/10 04:02ID:SdI5yvJjopen FH,file;
でいいみたいだよ
がんばってね★ミ
0942nobodyさん
02/08/10 04:21ID:???ここguzipが居なくなって廃れたなあ
みんなPerl6入れてるの?
早くParrotでスピード上げて遊びたいな
0943932
02/08/10 04:45ID:???"arse error [line 2]: Invalid statement near "open FH,"my4.p6";
Can't call method "tree" on an undefined value at ./perl6 line 183.
============================================================
[my5ofile.p6]
sub main(){
open FH,"my4.p6";
print "ujgh\n";
}
0944_gunzip
02/08/10 05:21ID:???my $fh = open $path : mode => 'r' or die "Can't open";
とします。
parrot-latest(8/9現在)では、open関数は"not yet implmented"です。
0946nobodyさん
02/08/10 15:27ID:???死ねよお前
0947nobodyさん
02/08/10 15:30ID:???死ねよお前
0948nobodyさん
02/08/10 15:43ID:???死ねよお前
0949148
02/08/10 15:51ID:???0950nobodyさん
02/08/10 16:18ID:???常数(use constant)を別モジュールにまとめて利用しようとしたのですが、
呼び出し元ではその常数を使えますが、別に呼び出しているモジュールでは
strict subsに引っ掛かってしまいます。
no strict subsをするしか無いのでしょうか。
0951nobodyさん
02/08/10 16:21ID:???0952nobodyさん
02/08/10 16:27ID:???レス数が950を超えています。1000を超えると書き込みができなくなります。