この人頭いいなと思ったエピソード

バッチファイルの記述の仕方について教えてください。

個人的な学習で初めてバッチファイルを作成しているのですが
疑問な点があるので質問させて頂きます。

作成したテキストに対してparlのプログラムを用いて文字操作を
するという流れをバッチファイルにまとめてみようと思うのですが
windowsのコマンドプロンプトからでは「***.pl」と実行してもparlプログラムが
動いてくれず、「***.pl」のテキスト情報が出てきてしまいます(クリックした際と同じ動作)

msysを使用すればparlプログラムが動いてくれたので、バッチファイルから
msysの操作を行いparlプログラムを動かしたいのですがmsys上にバッチファイルから
どの様に入力情報を送るのかが分かりません。

そもそもバッチファイルではそのような操作は無理なのかも合わせて
知識のある方、分かりにくい書き方で申し訳ありませんが
ご教授お願いします。

[作成したバッチファイルの中身]

moji_syutsuryoku.exe    //簡単なテキストファイルを出力するプログラム
cd ../../../../         //msysが存在する階層まで移動
call msys.bat        //msysの呼び出し
----------------------------------
---ここからmsys上での操作を行いたい---
----------------------------------

A 回答 (4件)

「parl」というのは「perl」の誤りですよね?



[作成したバッチファイルの中身]を次のようにしてみてください。

moji_syutsuryoku.exe
c:\perl\bin\perl.exe ***.pl

「c:\perl\bin\perl.exe」の部分はご自分の環境に合わせて変えてください。
なお、コマンドプロンプトで「perl -v」と打ってみて、perlのバージョン情報が表示されればフルパスで書かなくても「perl.exe」のみで大丈夫です。「'perl' は、内部コマンドまたは外部コマンド・・・」というエラーが出たら、フルパスを書く必要があります。
「***.pl」はperlのプログラムを記述したファイル名に変えてください。
    • good
    • 0
この回答へのお礼

綴りの間違いお恥ずかしい・・・

回答を見ていて、ハッとしたんですが
家庭用のWindowsPCにperlがインストールされていない事を失念していました
普段は大学の方のマシンを使っていたのでうっかりしていました・・・

Active perlを導入することで
バッチファイルの方に

perl ***.pl

というように記述すれば動作するようになりました。
回答どうも有難うございました。

お礼日時:2010/07/14 19:50

#2さんへ。


XPのSP2以降あたりから、/でも動きますよ。
その代わり、「親の親へ移動する」ときに使えた[...¥]が使えなくなってます。
    • good
    • 0

> cd ../../../../



バッチファイル(=cmd.exe)なら、フォルダの区切り文字は円マークですよね?
    • good
    • 0

とりあえず msys 以前のところですが....


「『***.pl』と実行してもテキスト情報しか出てこない」ということですが, その「parl」なるプログラムにパスが通っていれば
parl ***.pl
で実行できるんじゃないでしょうか.
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!