68user's page 掲示板

Prev< No. 4752〜4780> Next  [最新発言に戻る] [過去ログ一覧]
No. 4752 # Kenichi Maehashi [E-mail] 2007/01/19 (金) 22:18:37
>>4748 68user さま
お世話になっております。
ご指摘の通り、$parser->output_to_core(1); で解決できました。
このページはチェックしていたのですが、見落としておりました。。。申し訳ありません。
本当に有り難うございました。

No. 4753 # サーバにUPしたプログラムと通信したい [E-mail] 2007/01/20 (土) 15:36:09
はじめましてwここのHPをみてソケット通信を勉強しています。
よろしくお願いします。

perlを使ってサーバプログラムとクライアントプログラムを作り
ソケット通信をしています。
ActivePerlを使用し、ローカルマシンでは通信できているので
実際にサーバプログラムをサーバにUPしてテストしたいと思い
プロバイダからもらった領域にFTPでUPしました。

で、質問なのですが
サーバプログラムが仮に http://www.aaa.com/user/test.pl という
アドレスにある場合
クライアントプログラムの
IO::Socket::INET->new( PeerAddr ... );
のPeerAddrはどう変えればいいのでしょうか?
※モジュールを使ってみようを参考にしています。

またほかにも何かしなければいけないのでしょうか?
よろしくお願いいたします。

No. 4754 # 68user 2007/01/20 (土) 18:00:20
>>4753 サーバにUPしたプログラムと通信したい
$socket = IO::Socket::INET->new(
    PeerAddr => 'www.aaa.com',
    PeerPort => '80',
    Proto => 'tcp');
  );
でよいです。

http://perldoc.perl.org/IO/Socket/INET.html に書き方のサンプルが
あるので、ざっと眺めてみてください。

No. 4755 # かみゅ [E-mail] 2007/01/20 (土) 19:01:34
ありがとうございます。

PeerAddr => 'www.aaa.com'
を指定した場合
user/test.pl
この部分はどうなるのでしょうか?
特に指定しなくても通信できるのでしょうか?

No. 4756 # 68user 2007/01/21 (日) 19:50:40
>>4755 かみゅ
IO::Socket はソケットのモジュールです。その上に HTTP を流すのであれば
    HTTP クライアントを作ってみよう(1)〜(4)
を読んで、送信すべき HTTP リクエストはどんなものなのかを調べてください。

No. 4757 # matsumoto 2007/01/24 (水) 12:04:11
初めまして、書き込みさせていただきます。
現在RSAについて学んでおり、非常に有用な情報としてこちらのHPを拝見させていただきました。
さて、http://x68000.q-e-d.net/~68user/net/rsa-1.htmlに記載されているrsa-1.cをコンパイル
してみたところ、openssl関連のヘッダファイルが読み込まれない旨のエラーが返され、
実行できません。実行環境としてVineLinux3.1にてgccコンパイラを用いており、opensslの
バージョンは最新版と思われる0.9.8をインストールしております。
対策方法をご教授いただければ幸いです。よろしくお願いします。

No. 4758 # 68user 2007/01/24 (水) 12:21:12
>>4757 matsumoto
まずは rsa.h や engine.h のありかを探してください。
例えば /usr/local/include/openssl/rsa.h が存在するなら
    % gcc -I /usr/local/include rsa-1.c
とします。

No. 4759 # ST 2007/01/28 (日) 15:46:17
はじめまして。STと申します。
CGI初心者です。
質問させていただきます。
「静的な画像表示」のところで、該当するソースをコピーして
サーバーにアップした後http://〜cgiと入力しGIFファイルを表示させようとすると
「GIF89aX」と表示されます。
パーミッションはOKで画像ファイルは存在します。
解決方法を教えていただけますと幸いです。
よろしくお願いします。

No. 4760 # 68user 2007/01/28 (日) 16:45:43
>>4759 ST
http://chaichan.web.infoseek.co.jp/qanda/qa7041.htm
に一本化ということで。

No. 4761 # 68user 2007/02/13 (火) 22:13:46
http://x68000.q-e-d.net/~68user/webcgi/sample/perl/graph-maker.cgi
にて日本語を出す方法のメモ。

% cvs di -u
cvs diff: Diffing .
Index: graph-maker.cgi
===================================================================
RCS file: /home/68user/cvsroot/public_html/webcgi/sample/perl/graph-maker.cgi,v
retrieving revision 1.9
diff -u -r1.9 graph-maker.cgi
--- graph-maker.cgi 26 Feb 2006 08:31:21 -0000 1.9
+++ graph-maker.cgi 13 Feb 2007 13:12:16 -0000
@@ -886,6 +886,8 @@
                }
          }

+ GD::Text->font_path( "/usr/local/share/fonts/TrueType/" );
+ $graph->set_title_font("sazanami-gothic", 14 );
          my $image = $graph->plot($ref_data) or die "Cannot create image";

          binmode STDOUT;

No. 4762 # べた 2007/02/15 (木) 16:05:07
findコマンドの使い方について教えて下さい。

findコマンドで検索を行う場合、指定したディレクトリ内だけ
検索を行い、下位のディレクトリは対象外にしたいのですが
できるのでしょうか。

例えば、/tmp配下を検索するとして、
/tmp
/tmp/backup
/tmp/save
とあった場合、
/tmp内だけを検索し、/tmp/backupや、/tmp/saveなどの下位ディレクトリ内
は見ないようにしたいのです。

find /tmp -name "*.csv" ! -size 0 -print

ドキュメントに、「-prune」がありましたが、指定すると、表示すべきものが
でてきません。上手くいきませんでした。

find /tmp -name -prune "*.csv" ! -size 0 -print
find /tmp -name "*.csv" -prune ! -size 0 -print

また、ファイル名は、ワイルドカード指定なので、表示後のgrepなども
使えません。

環境は、
Solaris8
Bシェル

No. 4763 # 68user 2007/02/16 (金) 00:33:04
>>4762 べた
試してませんが、
    % find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
ですかね。

とはいえ、
    - maxdepth オプションを使える find をインストールする
    - grep '^/[^/]*/[^/]*$' としてパスに '/' が 2個以上含まれないことを
        チェックする
    - ls -l /tmp/*.csv | awk '$5~/^0$/{print $9}'
などの方法がよいような気もします。

No. 4764 # べた 2007/02/16 (金) 13:06:41
>> 4763

ありがとうございます。

>% find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
ですが、配下のディレクトリを全て網羅するのは。。。
また、試してみましたが、直下のファイルがでませんでした。

> - maxdepth オプションを使える find をインストールする
> - grep '^/[^/]*/[^/]*$' としてパスに '/' が 2個以上含まれないことをチェックする
実際には、パスに、’/’が2個以上含まれるているので無理かと。

> - ls -l /tmp/*.csv | awk '$5~/^0$/{print $9}'
これが、一番よい方法になるのですかね。

No. 4765 # 68user 2007/02/16 (金) 15:23:55
>>4764 べた
> 直下のファイルがでませんでした。
FreeBSD では表示されました。Solaris の find は出ないのでしょうか。

> 実際には、パスに、’/’が2個以上含まれるているので無理かと。
「3個以上」の誤りでした。

ベストなのは「/tmp/ 直下に置くといういまいちな仕様を直す」だと
思いますが、それができれば苦労してないんでしょうね。

No. 4766 # べた 2007/02/16 (金) 17:48:15
>>4765 68user

ありがとうございます。
> find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
ですが、
期待したものがでませんでした。
「*.csv」が表示されず、それ以外の全てがでました。

lsコマンドで上手く行きそうなので、この方法で試します。

No. 4768 # 2007/02/18 (日) 00:56:54
>>4764 べた

>>% find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
>ですが、配下のディレクトリを全て網羅するのは。。。
すべて書くのは不可能ですよ。
それに、10も20もないでしょ。
ディレクトリだけを求めてすべてを変数に入れて設定すれば出来ませんか。

OP="-o -name backup -o -name -save"
find /tmp -name "*.csv" $OP -o ! -size 0 -print

でも、その下にあったら無理かな。

>>4766 べた

>> find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
>ですが、
>期待したものがでませんでした。
>「*.csv」が表示されず、それ以外の全てがでました。
使い方、間違ってませんか。?

No. 4769 # beck 2007/02/18 (日) 17:56:20
初めまして!beckと申します。
このサイトでOpenSSLを用いたRSA暗号を実装例を紹介していますが、
鍵生成などの工程では、どれほどの時間を要するのでしょうか?
もちろん、PCのスペックに左右されることは承知していますが・・・

No. 4770 # べた 2007/02/19 (月) 11:54:58
>>4765 68user
>>4768

>% find /tmp -name "*.csv" -o -name backup -prune -o -name save -o ! -size 0 -print
ですが、
やはり上手くでません。
期待している’*.csv’を表示しません。

> FreeBSD では表示されました。Solaris の find は出ないのでしょうか。
UNIXのOSによって異なる動きをするというこですか。
Solairs以外の環境がないのでなんともいえませんが。

No. 4771 # zxcv 2007/03/07 (水) 16:19:16
文字コードとエンコーディング (1)
http://x68000.q-e-d.net/~68user/webcgi/char-code-1.html

上記のページ、とても良くできていると思います。 ありがとうございます。

しかしながら、「エンコーディングとは」の項の先頭付近にある「他の文字と同時に扱う場合のことは考えられていません」の『文字』は『文字集合』とするべきでは無いでしょうか?

# 入門学習のために読む人にとって、重要な部分だ思います。

No. 4772 # 68user 2007/03/08 (木) 03:58:39
>>4771 zxcv
ご指摘ありがとうございます。修正してみましたがいかがでしょうか。
    http://x68000.q-e-d.net/~68user/webcgi/char-code-1.html

cvsweb が動かなくなっているので、修正点の diff を貼っておきます。

RCS file: /home/68user/cvsroot/public_html/webcgi/org/char-code-1.html,v
retrieving revision 1.6
diff -r1.6 char-code-1.html
68c68
< <LI>ASCII … 半角英数字・半角記号 (a,A,0,!,@,#)
---
> <LI>ASCII … 半角英数字・半角記号 (a,A,0,!,@,# など)
70c70
< <LI>JIS X 0208 … ひらがな・かたかな・漢字・全角記号
---
> <LI>JIS X 0208 … ひらがな・カタカナ・漢字・全角記号
73c73
< があります。
---
> などがあります。
80c80
< エンコーディングとは、複数の文字集合を一緒に扱うための枠組のことです。
---
> エンコーディングとは、複数の文字集合を同時に扱うための枠組のことです。
82c82
< 他の文字と同時に扱う場合のことは考えられていません。
---
> 他の文字集合と同時に扱う場合のことは考えられていません。
84c84
< ASCII と JIS X 0208 を同時に扱う場合を考えてみましょう。
---
> たとえば、ASCII と JIS X 0208 を同時に扱う場合を考えてみましょう。
90c90
< 「A」なのか「あ」なのかを判断できません。そのためには
---
> 「A」なのか「あ」なのかを判断できません。これを判断できるようにするためには、
94c94
< つまり「ここから先は ASCII」「ここから先は JIS X 0208」というようなものを入れる。
---
> たとえば「ここから先は ASCII」「ここから先は JIS X 0208」という意味の、区切り用のコードを入れる。
96c96
< という2通りの対策があります。さらに、
---
> という2通りの対策が考えられます。さらに、
101c101
< という細かい規格を決めたもの、それがエンコーディングです。
---
> という細かな規格を決める必要があります。
103,104c103,105
< エンコーディングには、主に3種類あります。
< JIS と Shift_JIS と EUC-JP です。
---
> このような、複数の文字集合を同時に扱うための規則のことを「エンコーディング」と呼びます。
> <P>
> エンコーディングには、主に3種類あります。ISO-2022-JP と Shift_JIS と EUC-JP です。

No. 4773 # べた 2007/03/17 (土) 17:20:13
readコマンドを使ってファイルから読み込みを行っています。
読み込んだ件数を出力しようとしているのですが、どうしても
0件となってしまいます。
どこがいけないのでしょうか。どう直せばよいのでしょうか。

-----------------------------------
#!/bin/sh
#

FILE="/tmp/sample.csv"

i=0
while read LINE
do

        編集処理

        表示処理

        i=`expr ${i} + 1`

done < ${FILE}

echo "${i} 行読み込みました。"

No. 4774 # べた 2007/03/18 (日) 11:26:27
>>4773 べた

whileとかforのループ内で使用した変数は、
ループ終了後(ループを抜けた後)参照する
ことはできないのでようか。

できるとした場合、どうすればいいのですか。

No. 4775 # 2007/03/19 (月) 23:45:28
>>4774 べた
私もあまり詳しくないのでしりません。
kshでできたような。

http://search.luky.org/linux-users.9/msg06099.html

で、似たことが質問されていますので確認してみては。

No. 4776 # zsh 2007/03/20 (火) 10:37:41
>>4774 べた
最近シェルスクリプト触ってないんですが、
多分これでOKかと。

------
i=0
exec 3<&0 0<$FILE
while read LINE; do
        :
done
exec 0<&3 3<&-
echo $i
------

No. 4778 # べた 2007/03/20 (火) 17:35:18
>> 4776

ありがとうございます。
上手く行きました。

また、以下でも出来ました。

-------------
i=0
exec < ${FILE}
while read LINE
do

        echo ${LINE}
        i=`expr ${i} + 1`

done

echo ${i}
-------------

No. 4779 # める 2007/03/31 (土) 16:14:20
はじめまして。
質問があります。

よくあるポートモニターなどはどのように作っているのでしょうか。
また、自分のパソコンが通信しているデータを見ることができますか?

No. 4780 # べた 2007/04/10 (火) 16:24:19
Perlなのですが、sync(fsync?)を使って
書き込みを実現しようとしています。
書き込み後、正しく書けたか、ファイルの比較や
サイズの取得をやろうとしています。

今一、Perlのモジュールとかライブラリとかが
わかりません。
参考になるものありませんか。
また、どのようにすればよいですか。

Prev< No. 4752〜4780> Next  [最新発言に戻る] [過去ログ一覧]