2017-02-20 3 views
0

私はyuicompressor 2.4.7を使用しています。beceause 2.4.8は依然として(see here)、私はjsファイルを見つけて、mimifyするために少しスクリプトを作ったが、私は複数の時間をスクリプトを実行する拡張子の悪いファイルを作成する。アップグレードyuicompressorバッチファイル

  1. 最初のラン:bla.js =>
  2. セカンドランbla.min.js:例えば bla.js => bla.min.jsそれはまたbla.min.minを作成します.jsファイル
  3. など

    for /r %I in (*.js) do ( java -jar "C:\Mimifer\yuicompressor-2.4.7.jar" "%~I" -o "%~dpnI.min.js" )

私は特定のextensを除外するファイルを見つける方法やその可能性を変更する必要がありますイオンファイル? 私は私が%%I、ない%Iあるべきmetavariableにあなたのバッチ内のすべての参照ことに注意してください

+0

するのに役立ちます使用しようとしているコマンドのマニュアルを読んでください。これは 'FOR'コマンドのドキュメントの一番上にあります。 **バッチプログラムでFORコマンドを使用するには、%variableの代わりに%%変数を指定します。変数名は大文字と小文字が区別されるので、%iは%Iとは異なります。** – Squashman

+0

うんうん、現在のスクリプトはコマンドプロンプターで使用しているバージョンです。 –

答えて

0
for /r %%I in (*.js) do echo %%I|find /i ".min.js">nul&if errorlevel 1 (

このスクリプトを作るためにthisを使用しました。 %Iは、プロンプトからコマンドを実行した場合にのみ適用されます。

このコマンドecho ESファイル名はどのような場合でも、文字列/i「.min.js」を探しているfindにパイプ|で見つかりました。 findコマンドの出力は、nulにリダイレクトされて破棄されます。 findが文字列を検出した場合、errorlevelは0に設定され、それ以外の場合は1に設定されます。

&分離し、古い元が、まだ、サポートされている構文if errorlevel 1コマンドに

をカスケード接続「ERRORLEVELが1以上であれば、」意味(すなわち、この場合には、文字列が見つかりませんでした)

+0

それは仕事です、ありがとう、良い一日を! :) –

関連する問題