私はスクリプトを持っています(言語はVBScriptですが、質問のために重要ではありません)。これは他の多くのスクリプトの基礎として使われています。 "、または"ラッパースクリプト "などがあります。私はリポジトリをモジュール化して、この基本スクリプトを特定のスクリプトインスタンスに固有の機能と組み合わせて、後で再構築するようにしたいと考えています。GNU Makeを使用してスクリプトをビルドする
例:
baseScript.vbs
- ログ、レポート、およびその他の一般的な機能。queryServerFunctions.vbs
-baseScript.vbs
の機能に依存する特定の固有のタスク(機能)を持つスクリプト。
私は、単一のスクリプトに2つ(またはスクリプトフラグメントを持つファイルの任意の数)を結合するためにmake
を使用したい - 完全に自己完結している - と言う、queryServer.vbs
。この自己完結型スクリプトは、ソーススクリプトのいずれかが変更されるといつでもmake
で再構築できます。
問題は次のとおりです。make
を使用してスクリプトビルドを管理できますかもしそうなら、これを行うための最善の方法は何ですか?
私のスクリプト環境はWindows 7 x64で動作するCygwinです。
詳細な返信をありがとうございます。 'make 'が単純な連結より複雑な操作をすることができるのであれば私は興味がありました。私はそれが主にコンパイル言語のために設計されていたと理解していますが、おそらくincludeや類似のものを使って、 'a.vbs + b.vbs = c.vbs'よりももっと洗練された方法でファイルをインターリーブすることが可能かどうか疑問に思っていました。 – treehead
'make'自体はそれを行うことができません:これは、ファイルを操作する他のプログラム(歴史的にはCコンパイラ)を駆動するように設計されています。私の例では、そのプログラムは 'cat'です。 – slowdog
makefile内の 'cat'をもっと洗練されたものに置き換えることができます:別のVBScript、おそらく最大の奇妙さのために、Cプリプロセッサ' cat $ + | gcc -E-> $ @ 'を使うと、入力ファイルに' #include 'のようなコマンドを使うことができます。しかし、これらの変換が非常に高価にならない限り、単純なバッチファイルやスクリプトを使用します。 – slowdog