バッチファイルの記述の仕方とmsys上での操作方法

このQ&Aのポイント
  • バッチファイルの記述方法やmsys上での操作方法について教えてください。
  • バッチファイルからmsysを使用してparlプログラムを動かす方法を教えてください。
  • バッチファイルではmsys上での操作ができるのか教えてください。
回答を見る
  • ベストアンサー

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

バッチファイルの記述の仕方について教えてください。 個人的な学習で初めてバッチファイルを作成しているのですが 疑問な点があるので質問させて頂きます。 作成したテキストに対してparlのプログラムを用いて文字操作を するという流れをバッチファイルにまとめてみようと思うのですが windowsのコマンドプロンプトからでは「***.pl」と実行してもparlプログラムが 動いてくれず、「***.pl」のテキスト情報が出てきてしまいます(クリックした際と同じ動作) msysを使用すればparlプログラムが動いてくれたので、バッチファイルから msysの操作を行いparlプログラムを動かしたいのですがmsys上にバッチファイルから どの様に入力情報を送るのかが分かりません。 そもそもバッチファイルではそのような操作は無理なのかも合わせて 知識のある方、分かりにくい書き方で申し訳ありませんが ご教授お願いします。 [作成したバッチファイルの中身] moji_syutsuryoku.exe    //簡単なテキストファイルを出力するプログラム cd ../../../../         //msysが存在する階層まで移動 call msys.bat        //msysの呼び出し ---------------------------------- ---ここからmsys上での操作を行いたい--- ----------------------------------

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

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

thiammat
質問者

お礼

綴りの間違いお恥ずかしい・・・ 回答を見ていて、ハッとしたんですが 家庭用のWindowsPCにperlがインストールされていない事を失念していました 普段は大学の方のマシンを使っていたのでうっかりしていました・・・ Active perlを導入することで バッチファイルの方に perl ***.pl というように記述すれば動作するようになりました。 回答どうも有難うございました。

その他の回答 (3)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.4

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

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

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

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

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

関連するQ&A

  • バッチファイルの作成

    お世話になっております。 バッチファイルの作成方法について、只今勉強中です。 現在、毎日行われている作業をバッチファイルで自動化が出来ないか検討しておりますが、バッチファイルの編集に苦戦していて困っております・・・ ---実行したい事--- 0.以下、作業の流れをコマンドプロンプト上で表示する。 1.C:\ツール\batというフォルダに移動する。 2.batフォルダに新しく「file」というフォルダを作成 3.batフォルダ内には「bat_YYYY/MM/DD.txt」という日付のテキストがあり、該当する日付のテキストをコピーしてfileフォルダへ貼り付ける。 4.fileフォルダへ移動する。 ---終了--- 手順を全部書いてしまっているのですが、途中まではバッチファイルの編集をする事が出来ました。しかし、正解しているか不安です。 ご教授の程、宜しく御願い致します。

  • バッチファイルを1個だけしか起動しないようにしたい

    エクスプローラー上から バッチファイル(test.bat)を ダブルクリックしてバッチファイルを実行しています。 通常はコマンドプロンプトが1個だけ表示されて、 バッチファイルが実行して実行が終了すると コマンドプロンプトも閉じられます。 しかし、時々、 コマンドプロンプトが2個表示されることがあります。 つまり、ダブルクリックが、 1回ではなく2回実行されたと誤認識されて、 同じバッチファイル(test.bat)が 2つ起動してしまったと思われます。 当然、その後の処理はおかしくなります。 (バッチファイル(test.bat)の中に 何らかのコードを追加するなどして) 必ず1個だけしか起動しないようにすることは、 できないでしょうか。 (Windows10)

  • コマンドプロンプト、バッチファイル

    解決法を探してみたのですが、見つからないのでご教授ください。 コマンドプロンプトでどんなコマンド(ipconfig,ping,etc)を入力しても 「操作可能なプログラムまたはバッチ ファイルとして認識されていません。」という警告が出るようになってしまいました。 多分、原因はJavaの勉強をしていたときに環境変数のパスをいじってしまったからだと思います。 調べていて、思ったことなのですが、カレントディレクトリにバッチファイル(.bat)というファイルが見当たりません。これがないからかなとも思っています。 コマンドプロンプトからのコマンド入力ができるように解決方法をご教授ください。

  • バッチファイルが実行されなくなってしまいました。

    下記のことをする前は、正常にバッチファイルは動作していました。 フォルダオプションの”ファイルの種類”で 新しく拡張子batを作成し、メモ帳と関連付けました。 そしてそれを削除したところ、バッチファイル自体が動かなくなってしまいました。 バッチファイルは何もしなくても、コマンドプロンプトと(?)関連付けがされていたはずですが、それを普及するにはどうすればよろしいでしょうか?

  • バッチファイルで実行できたりできなかったり

    こんにちは。 バッチファイルとコマンドプロンプトについて、少々お伺いしたいことがあります。 まず、コマンドプロンプトで以下のコマンドを打ち込んでみたところ、すべて正常に実行することができました。 ping [example.com] > result.txt tracert [example.com] >> tr_result.txt ipconfig /all > ipc_result.txt 次に、各コマンドをテキストファイルに書き込んで、それぞれ "p_test.bat" # 内容は ping コマンド "tr_test.bat" # 内容は tracert コマンド "ipc_test.bat" # 内容は ipconfig コマンド と命名しデスクトップに配置、ダブルクリックで実行してみました。 すると、このうち正常に実行(結果をテキストファイルに出力)されたのは tr_test.bat のみでした。 ここで質問なのですが、なぜこのような違い(バッチファイルにすると実行できるものとできないものに分かれる)が起こるのでしょうか? バッチファイルの作り方やとコマンドプロンプトについて調べてみましたが、説明を見つけることが出来ませんでした。 この辺の理論について詳しい方がおりましたら、ご教示頂きたく思います。 ちなみに、OS は Windows XP SP2 です。 よろしくお願いいたします。

  • 1つ上の階層にフォルダを移動させるバッチファイル

    windows XPで下記のようなバッチファイルを作成したいです。 aaaフォルダ内にyyy.batと111フォルダがあり、111フォルダの中にbbbフォルダとcccフォルダがあるとします。なお、bbb、cccフォルダ内にはファイルが存在しています。 そしてaaa、bbb、cccの各フォルダの名称は可変します。 この状態でyyy.batにbbb、cccフォルダをaaaフォルダ内に移動させる(一つ上の階層に移動させる)バッチプログラムを作成したいと思っています。 どのようにすればいいのでしょうか。 お分かりの方、お教えいただけないでしょうか。 よろしくお願いいたします。

  • バッチファイル

    お世話になります。 バッチファイルを用いて、実行されるプログラムがあります。 私の作成したものではないので、どのようなやり取りが内部で行われているのかは、詳細はわかりません。 例えば、D:\Programフォルダーの中にプルグラムをインストールしたとすれば、引数を2つ指定して(例:aaaとbbb)、バッチファイル(test.bat)を以下のように実行すれば、プログラムは正常に作動します。 D:\Program>test aaa bbb しかし、以下の場合には、正常に作動しません。 C:\>D:\Program>test aaa bbb つまり、パスを含めて、バッチファイルを実行することは、このプログラムは許可してくれません。 ここで、例えば、VBなどを用いて、テキストボックスなどで引数を二つ指定して、実行ボタンをクリックすれば、必ず、D:\Program>test aaa bbbという状態で、バッチファイルが実行されるようにするには、どのようにすればよろしいでしょうか? もしご存知の方がいらっしゃいましたら、是非、ご教授願います。 以上、宜しくお願いいたします。

  • バッチファイル

    バッチファイルとは一括処理を行う為のプログラムと認識しています。 拡張子が.batになった場合はバッチファイルになるのでしょうか?またどういう時につかうのでしょうか? ご教示頂ければ幸いです

  • バッチファイルについて

    バッチファイル(.bat)について不明な点が ありますので、詳しく方ご教授お願い致します。 コマンドプロンプトを開き、対象のバッチファイルを ドラッグアンドドロップし、実行すると正常通りの結果が 得られました。 ただ、バッチファイルをダブルクリックし、実行すると 実行されません。 原因を詳しい方、ご教授お願い致します。

  • バッチファイルの作成について

    分からないことが2つありますので、 質問させていただきます。 1.バッチファイルを実行するときに   他のパソコンでは出来ない環境とかはあるのか。  (例えば、ファイル削除のバッチファイルを作成したとします。   管理者権限でバッチファイルを実行したにも関わらず   消せない…なんていうことはあるのでしょうか?   以前、プログラムを書いて、自分のパソコンでは上手く動作したのですが、   他のパソコンだと上手く動作しませんでした。(ファイルの削除が上手く行かなかった)   それに対する対応策などもあれば、教えてください。) 2.バッチファイルのコマンドプロンプトが自動終了するのを防ぎたい   IEが自動で上がるのを防ぐために、コマンドプロンプトで   IE_BLOCKERを実行し、キーボードで色々入力して実行していく必要があります。   そこで、 cd C:\IE10_Blocker IE10_Blocker.cmd /B pause 上記のように書き、 batファイルとして保存しました。 しかし、pauseがきくことなく、勝手に画面は閉じてしまうし、 C:\にIE10_Blockerが無かったとしても分からなくなってしまいます。 何か改善策はあるのでしょうか? 以上、よろしくお願い致します。