タグ

perlに関するzeemoreのブックマーク (98)

  • Perlインタプリタ - 2部 Perl言語仕様 - [SMART]

    -e コマンドライン入力 -e コマンドライン 1 行のスクリプトを指定します。複数行のスクリプトを指定するには -e を複数指定します。 perl -e 'print "Hello World\n"' -i 入力ファイルの修正とバックアップ -i拡張子 <>で入力するファイルについて、処理した結果を元のファイルに書き戻します。 拡張子を指定すると、元のファイル名にその拡張子を加えた新しいファイルを作成し、それに処理結果を出力します。 たとえば、HTML ファイルの記述で <body> タグを全て <body bgcolor="#C0C0C0"> に変更するには以下のようにします。 perl -i.bak -p -e 's/<body>/<body bgcolor="#C0C0C0">/ig;' *.html この結果、オリジナルのHTMLファイルを置換し、 .bak という拡張子をつけて

    Perlインタプリタ - 2部 Perl言語仕様 - [SMART]
    zeemore
    zeemore 2007/01/31
  • 仙石浩明の日記: Perl の非同期I/Oモジュール POE を使って VPN-Warp relayagent を書いてみました

    多数の TCP/IP セッションを同時に維持する必要性などから、 非同期I/O が最近流行りのようです。 何をいまさら、という気もするのですが、 いわゆる「最新技術」の多くが 30年前の技術の焼き直しに過ぎない今日このごろなので、 非同期I/O 技術が「再発見」されるのも、 「歴史は繰り返す」の一環なのでしょう。 スレッドが当たり前の時代になってからコンピュータ技術を学んだ人にとっては、 (古めかしい) 非同期I/O が新鮮に映るのかも知れず、 なんだか「ファッションのリバイバル」に似ていますね。 Perl で非同期I/O 処理を手軽に行なうための枠組みとして、 POE: Perl Object Environment というものが あるようです。 POE を使うと、 あたかもスレッドを使っているような手軽さでプログラミングできます。 試しに VPN-Warp の relayagent を

  • とほほのperl入門

    とほほのperl入門 トップ > とほほのperl入門 概要編 perlとは 特徴 perlのバージョン 入手方法 実行方法 引数指定 ファイル指定 自己完結型 標準入力読み込み型 基礎知識 簡単な実行例 これだけは覚えて 定数・変数・値 数値 文字列 エスケープシーケンス(\) スカラー変数($XXX) 配列(@XXX) 連想配列(%XXX) 変数名に使える文字 数値と文字列 真(true)と偽(false) 定義済みと未定義 省略時の変数($_) 環境変数($ENV{'XXX'}) コマンド引数($ARGV) シグナル($SIG{'XXX'}) その他の特殊変数($X) バイナリデータ 演算子 代入 算術演算子 ビット演算子 数値比較演算子 文字列比較演算子 条件演算子 マッチング 文字列連結 文字列置換 繰り返し演算子 範囲演算子 ファイル検査 制御構文 if elsif else文

    zeemore
    zeemore 2007/01/25
  • File::Tempが便利 : blog.nomadscafe.jp

    File::Tempが便利 File::Tempが便利 一時ファイルを作る場合、IO::Fileのnew_tmpfileではファイル名が取得できないが、File::Tempではファイル名を取得することができる。 作ったファイルは特に宣言をしない限り、プログラム終了とともに削除される。 use File::Temp (); $fh = File::Temp->new; $fname = $fh->filename; こんな感じ。

    zeemore
    zeemore 2007/01/23
  • Web APIの紹介

    まず、Web APIとは何か、ということに簡単に触れておきます。Web APIWebサービスAPIとか、Webサービスなどとも呼ばれます。Web上で行われていることがわかりきっている場合には、さらに略して「API」と呼ばれてしまうこともあります(ちなみにAPIはApplication Program Interfaceの略で、Web APIに限らずプログラムがその機能をほかのプログラムから利用できるように公開するインターフェイスのことを指します)。最近はインターネットで提供されているサービスがWeb APIを公開することが珍しくなくなってきているので、「どこどこのサービスがAPIを公開した」といったニュースを耳にしたこともあるのではないかと思います。 それでは結局Web APIとは何なのでしょうか。Web APIの定義はあいまいなところがあるのですが、ここでは「HTTPを利用してネットワ

  • JavaはPerlよりも比較にならないほど速い?

    川合孝典(2002/3/12) はじまり PHPとの比較のときから話が出てはいたんですが、 JavaPerlとどっちが速いのかという気になるひとには気になる(気にならない人は気にならない(^^))話をちょっと調査してみようということで。 とはいえ、ちょっとは気になるというわけで、2つのケースについてテストしてみました。 1つは非常に単純なケースで、こちらのページでのベンチマークをベースに、単にページを表示するだけです。 http://java-house.etl.go.jp/ml/archive/j-h-b/027274.html#body これだけではやる前からPerlが圧倒的に勝つ(というよりTOMCAT対mod_perlなんですけどね)のは当然なので、以下のURLを参考に http://java-house.etl.go.jp/ml/archive/j-h-b/03014

  • Plagger で取得した記事のスクリーンショットを出力する - spiritlooseのはてなダイアリー

    Plagger::Plugin::Publish::Screenshot。 CrenaHtml2jpg を使って、Plagger でスクリーンショットを出力してみる。 キャプチャには Win32::CaptureIE とかその辺のモジュール使えばPerlで完結するけど、試した中で一番安定してたのでCrenaHtml2jpgを使ってみた もちろんWindows専用。 cmd_path に CrenaHtml2jpg のアーカイブを展開したパスを設定して、dirに出力先ディレクトリを設定すると、そこにスクリーンショットの画像が放り込まれる。 すさまじくいい加減なコードだが、やりたいことは出来たのでよしとしよう。 他のOSにも対応したちゃんとしたモジュールがほしいなぁ。自分で作れって話だな。 package Plagger::Plugin::Publish::Screenshot; use st

    Plagger で取得した記事のスクリーンショットを出力する - spiritlooseのはてなダイアリー
  • Perl, Python, Ruby の比較

    コードの書きやすさは3つともそれほど違わないように思えます。ただ、読みやすさはダントツで Python が 優れています。Ruby はまずまずで、Perl は書き手の技量による部分が大きいのですが、 一般的には "読めない" コードになりがちです。 現在の人気を無視して、言語そのもののよしあしを考えると、 PythonRuby はほぼ互角でしょう。しかし、今のところ Python の方が、 実行速度が速く、ライブラリが豊富なので、とりあえず Python を使うことにします。 また、Python には対話モードがあるのも Lisp に慣れた人間にとってはありがたいです。 Ruby は今後の健闘に期待します。 5. おわりに 以上 Perl, Python, Ruby の比較をつれづれと書きましたがご参考になりましたでしょうか? 結論は、 Python, RubyPerl に比べ

  • ImageMagic(PerlMagic)

    このコーナーは、ホームサーバ、自社サーバならではのグラフィックライブラリ、ImageMagickのインストールと、利用法をご紹介します。 On The Flyでは不可能なJPEGやPNG形式の画像を動的に作成、編集することができ、 アップロードされた画像をすべてJPEG形式のサムネイルでコピーする事も可能にします。 ImageMagickを使用すれば こんなグラフも動的に作成できてしまいます。 章ではWindowsのホームサーバを構築する事を目的としていますのでWindowsのインストールを解説します。 と言ってもWindowsの場合は、解説するまでもありません。5分もあれば終わってしまいます。 ImageMagicを使用した高度なサンプルはこちらに有ります。 ※ImageMagickはPerlを拡張する必要がありますので、プロバイダや、レンタルサーバにご自分でインストールすることはでき

  • TAKENAKA's Web Page: Perl入門

    ハッシュとはなにか いよいよハッシュです. ハッシュは便利です. ハッシュが使えるようになると,Perl でできることの幅がぐんと広がります. ハッシュを使いこなしてこその Perl です. ハッシュはたくさんのデータをまとめて管理してくれるという点で配列に 似ていますが,何番目の要素かを指定するのではなくて, キーになる文字列(キーワード)を手がかりに要素を指定するデータ構造です. 配列は(スカラー)変数がたくさん順番に並んだデータ構造, ハッシュは,キーになる文字列と,対応する値とのペアが たくさん順不同で並んだデータ構造 です. 例を見るまえに,表記上のルールを説明します. まず,ハッシュ全体の名前は最初に % をつけます (配列のように @ を付けるのではなく). 個々の要素を指定するときは,キーになる文字列を {} で囲んでハッシュ名の うしろにつけます(配列のように [] で囲

    zeemore
    zeemore 2006/12/30
  • A Beginner's Introduction to POE

    A Beginner's Introduction to POE Jan 17, 2001 by Jeffrey Goff By Dennis Taylor, with Jeff Goff What Is POE, And Why Should I Use It? Most of the programs we write every day have the same basic blueprint: they start up, they perform a series of actions, and then they exit. This works fine for programs that don’t need much interaction with their users or their data, but for more complicated tasks, y

    A Beginner's Introduction to POE
  • Perlでオブジェクト指向 - 簡単なのでやってみませう。

    (Too many spams ... embedded comments are not allowed now, sorry.) 2005-11-25 (Fri) 14:27:42 bless がわからん。 2005-11-22 (Tue) 12:55:20 d? : ここを見る人は、Perlのクラス作り方がわからない人でしょう? 2005-11-22 (Tue) 12:54:50 d? : テストファースト良いと思うのですが、このページの最初に書くのは間違いだとおもいますね。 2005-09-20 (Tue) 14:00:54 オブジェクト指向の概念はお腹いっぱいですが、実際に運用出来るかと言うと・・プログラムの閉じ方がさっぱりわかりません。ちょこっと作ってテストみたいなのが、さっぱりです 2005-08-17 (Wed) 11:21:32 「クラスはどうやって書くの?」の中に「まず

  • Perl%u30AA%u30D6%u30B8%u30A7%u30AF%u30C8%u6307%u5411%u30D7%u30ED%u30B0%u30E9%u30DF%u30F3%u30B0

  • POE::Kernel - Perlによるイベント駆動スレッドアプリケーション

    名前 POE::Kernel - Perlによるイベント駆動スレッドアプリケーション 概要 POE は select() に基づいている, 完全にPerlで書かれている イベントループを持っています. 使用方法は単純です: use POE; POE は他のイベントループやI/O多重化システムとともに動作させるために 適応させることができます. 現在 Gtk, Tk, Event.pm もしくは IO::Poll のうち1つが POE::Kernel より前に use されていれば, それを適合させる ことができます. use Gtk; # Or Tk, Event, or IO::Poll; use POE; or 又は use POE qw(Loop::Gtk); or 又は use POE::Kernel { loop => "Gtk" }; use POE::Session; プロセ

  • ピヨピヨ ZeroMemory( ) » Blog Archive » クローラフレームワークXangoをsolarisで動かす

    POEを利用していて高速だというXango(1.08)を試してみました。環境はいつもの solaris x86 でこんなかんじ。 % uname -a SunOS dokodemo 5.10 Generic_118844-26 i86pc i386 i86pc Solaris まずXangoをインストールする前にPOEをインストールします。 依存パッケージのインストール途中 POE::Component::Client::HTTP の POE-0.3601/tests/30_loops/00_base/wheel_run.pm あたりでテストがこけてなんともならないので cpan> force install POE::Component::Client::HTTP で入れました。 Xango自体は確か問題なくインストールできた気がします。 Xangoについては YappoLogs:

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • POE: Perl Object Environment

    POE is a Perl framework for reactive systems, cooperative multitasking, and network applications. Read more about POE. POE is the most supported event loop for Perl. It supports [http://search.cpan.org/search?m=dist&amp

  • naoya.dyndns.org is offline

    naoya.dyndns.org is currently offline. Please try again later. Questions about our services? Learn more at Dyn.com.

  • YappoLogs: Xangoというクロウラーフレームワークを使ってみる

    Xangoというクロウラーフレームワークを使ってみる Xango XangoPerlで書かれた汎用クローラーフレームワークです。 イベント型フレームワークPOEを使用することにより高速なクローリングが可能です。 実装にもよりますが、単一プロセス内でインデックシングや文字コードの変換等の処理を 同時に行うアプリケーションでも1秒に5~8 URL、1時間で 18000 ~ 22000 URLの処理が行えます。 ドキュメントはperldocのみっぽいので、日語の情報を残す意味で使い方のメモをば。 相当端折って書いてます。 Xangoを使ったクロウラーを書くには、制御用のにPOEセッションを作る必要があります。 Xangoを制御するためのモジュールを適当な名前で作っておくのがスマートかと思います。 とりあえずセッション作成を行う処理を書きます sub spawn { my $class = s

  • http://dev.razil.jp/project/xango/

    zeemore
    zeemore 2006/12/29