トップ(最新)

nDiki : コマンド プロンプト

コマンド プロンプト - command prompt

[スタート]→[プログラム]→[アクセサリ]→[コマンド プロンプト] cmd.exe。

スポンサード リンク

Related term

2003年12月25日 (木)

[ Perl ] Term::ProgressBar このエントリーを含むはてなブックマーク

スポンサード リンク

スクリプトにプログレスバーが欲しいというので、Term::ProgressBar実装しておく。 しかし Windows + ActivePerl + コマンド プロンプトでうまく表示されるのかどうかは知らぬ。

twitter.com/Naney の follower になってください。


[ 12月25日全て ]

2005年2月23日 (水)

ActivePerlMing このエントリーを含むはてなブックマーク

ActivePerlMing を使えるようにしておきたい。

@ Visual Studio

Ming 0.3 beta1 のソースパッケージには Visual Studio 6.0 用のプロジェクトファイルが含まれている。 Cygwin の Bison と flex があればライブラリをビルドできるようだ。 横着して Linux 側で bison と flex で生成したファイルをコピーして(それから unistd.h をインクルードしている部分を消して)、ビルドしてみたところ一応 lib ファイルは作成成功。

しかし ActivePerl 用にPerl モジュールの make は失敗。

@ MinGW + nmakeActivePerl のモジュールをビルドできるらしい

調べたところ ExtUtils::FakeConfig を使うと Visual Studio が無くても MinGW + nmake でモジュールをビルドできるらしい(全てではないと思うが)。

ということで MingMinGWビルドした後、そのまま ActivePerl 用モジュールの作成まで持ち込むことにしてみる。

@ MinGW + MSYS + GnuWin32開発環境を構築

コンパイルに必要な環境を MinGW で、configure に必要な環境を MSYS で用意する。

@ bison は GnuWin32

Mingビルドに必要な Bison は MinGWMSYSインストーラに含まれていない。 bison-1.875.0-2003.02.10-1.exe というのが別途あるがうまく動かない。

ソースパッケージ(bison-2.0.tar.gz、bison-1.875.tar.gz)からはビルドできず。 MinGW/MSYSのプロジェクトにある bison-1.875-2003.02.10-1-src.tar.gz はビルドできるものの make check が通らない。

とうことで GnuWin32 の bison-1.875-4.exe (インストーラ形式)をインストール。 c:/usr/local/GnuWin32インストールした後、MSYS の /etc/fstab で /GnuWin32 にマウントし、/GnuWin32/bin に PATH を通しておく。

@ flex はソースパッケージから

flex-2.5.4a.tar.gz を展開して

 ./configure; make; make check; make install

インストール時ハードリンクが作れなくてエラーがでているようだが無視。

@ zlib (Ming で必要)

MSYS 上でビルドしてインストール。zlib-1.2.2.tar.gz を展開して

 ./configure; make; make check; make install

@ LibUnGif for Windows (Ming で必要)

MSYS 上でビルドしてインストール。 libungif-4.1.0b1-src.zip を展開して

 rm config.cache;
 config.h内の-DHAVE_VARARGS_Hをコメントアウト。
 ./configure; make; make install

make check はエラーが出るが無視。

@ libpng (Ming で必要)

MSYS 上でビルドしてインストール。libpng-1.2.8-config.tar.gz を展開して

 CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure
 make; make check; make install

@ いよいよ Ming

MSYS 上でビルド。ming-0.3beta1.tar.gz を展開して

 CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib make static

@ ActivePerl 用モジュール作成

ExtUtils::FakeConfigPPM::MakeMingSWF PPM パッケージを作成する。 (MSYSシェルではなく)コマンド プロンプトを開いて、Mingソースパッケージの中の perl_ext に移動。 MSYSMinGWnmake にPATHを通しておく。

それから Makefile.PL の実行で -lz を発見できないので、libz.a を Makefile.PL と同じディレクトリにコピーしてしまう(-L/usr/local/lib を指定しても効かなかったので)。 libpng.a、libungif.a も同じくコピーしておく。

Makefile を作成。Makefile.PL では -lz しか指定していないが、libpng と libungif も必要なのでコマンドラインオプションで指定する。ExtUtils::FakeConfig の Config_m を使用して MinGW を使用するようにする。

 perl -MConfig_m Makefile.PL LIBS="-lpng -lungif -lz"

ここで生成される Makefile の中で libperl58.a を指定している部分があるが、ActivePerl では perl58.lib になるので、エディタで書き換え。 後はいつも通り

 nmake
 nmake test
 make_ppm

PPM パッケージ作成完了。

簡単なPerlプログラムでSWFファイルが作れる事を確認。 やった。


[ 2月23日全て ]

2005年3月11日 (金)

wxPerl で daemon モニタ このエントリーを含むはてなブックマーク

Perl で書いた HTTP daemon 形式のシステムがあるのだが、Windows ユーザにとってはコマンド プロンプトからコマンドラインオプションを指定しての起動は繁雑でよろしくないらしい。

以前から管理用のGUIをつけようと思っていたのだが、現在の daemon プログラムにGUIをつけるとするとマルチスレッド化にしなければならないとか、そういう頭があって後まわしにしていた。

今回、まずはランチャと daemon のログモニタというレベルでGUIを作ってみることにした。 wxPerlランチャを作ってそこから子プロセスとして daemon を起動するという形式。 ランチャ側のアイドルループで、daemon の標準出力・標準エラー出力を読み出して表示するというもの。Linux 上ではうまく動いた。

  • Wx::Process でプロセスオブジェクトを生成
  • Wx::Process::Redirect() で、I/Oを取れるようにする。
  • Wx::ExecuteCommand() や Wx::ExecuteArgs() で daemon を起動。Wx::Process のインスタンスに結びつける。
  • EVT_IDLE でアイドルイベントハンドラの中で Wx::Process::GetInputStream、Wx::Process::GetErrorStream からの読み出しを行い defined ならば、UI側で表示。
  • daemon の終了がしたかどうかは EVT_END_PROCESS で捕捉。

といった感じ。


[ 3月11日全て ]

2005年6月8日 (水)

貼りつけ! コマンド プロンプト! このエントリーを含むはてなブックマーク

最近何か所かで紹介されている Command Prompt Explorer Bar 1.1 を使ってみる。 エクスプローラ上で Ctrl+M を押すと、コマンド プロントがエクスプローラ内に貼りつくソフトウェア

エクスプローラ上でフォルダを選択すると、cd コマンドが投入されてそのディレクトリに勝手に移動してくれたり*1便利。

窓の手の「任意のフォルダーからコマンド プロンプトを可能にする」オプションも便利だけれど、こちらはエクスプローラのフォルダ選択と連動するのでより便利そうだ。

*1連動を解除することも可

@ 追記


[ 6月8日全て ]

2006年5月29日 (月)

第5回 社内 Perl 勉強会 このエントリーを含むはてなブックマーク

リャマ本を使用した社内 Perl 勉強会の5回目を開催。 今回は一人病欠で6人。 今回も先週の金曜日に都合がつかなかったので、月曜日の開催。

今日は「初めてのPerl 第3版」第6章「入出力の基本」が範囲。 この章で、ダイヤモンド演算子 <> を含む標準入出力の基本がほぼおさえられる。

@ 今回の反省点

標準入出力を使うようにしておけば、リダイレクトやパイプを駆使することで簡単なプログラムを組み合わせて超便利。 その辺りを伝えたいところであるが、Windows ユーザにはちょとうまく良さを伝えきれなかった感じで反省。

今回から one liner について触れていこうと思う。 Perl のコマンドラインオプション -ne や -pe などを使いこなせるようになるとこれまた便利なので、ぜひ馴染んでいただきたい。

しかしコマンド プロンプトだとコマンドライン引数のクォートの仕方が Bash 等と違うので、環境別にサンプルを用意しなければならにのがちょっとネックである。 今回は時間の関係で Bash 上での例しか示せなかった。 次回からはもう少しきちんとサンプルを用意したい。

今回はほぼ1時間丁度ぐらい。


[ 5月29日全て ]

2010年2月10日 (水)

今日のさえずり - 副作用というと別の意味が思い浮かぶのは情報科学屋だから このエントリーを含むはてなブックマーク

@ 2010年02月10日


[ 2月10日全て ]

この日記のはてなブックマーク数 Add to Google RSS

Process Time: 0.031182s / load averages: 0.21, 0.17, 0.16
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)