YUIコンプレッサーでJavaScriptファイルを圧縮するための右クリックコンテキストメニューコマンドを作成しようとしています。私の究極の目標は、これをコンテキストメニューで実行できるようにすることです。
Java.exe -jar yuicompressor-2.4.2.jar -o <filename>.min.js <filename>.js
変数%1
を使用して、開いているファイル名を参照できることを知っています。このコマンドをバッチファイル構文に変換する方法がわからず、オンラインで回答を見つけることができませんでした。
更新:
ジェレミーの回答(+コメント)は機能しました。これにつまずく人のために、ここに私がしなければならなかったことがあります:
JavaScriptファイル用に作成したアクションでは、これをコマンドとして使用しました。
minify.bat "%1"
次のようなバッチスクリプトを呼び出します。
Java.exe -jar yuicompressor-2.4.2.jar -o "%~dpn1.min.js" %1
バッチスクリプトの場合、上記のコードはJava.exeとyuicompressorのディレクトリが両方ともPATH
変数に追加されることを想定していることに注意してください。これらをパスに追加しない場合は、ファイルのフルパスを使用する必要があります。
シーケンス%~dpn
は、以下を取得するために使用されます。
%~d
-ドライブ%~p
-パス%~n
-ファイル名バッチファイルを呼び出すアクションを変更します。
RunCompressor.bat "%1"
つかいます %~n1
RunCompressor.batで拡張子なしのファイル名を取得するには:
start javaw.exe -jar yuicompressor-2.4.2.jar -o "%~n1.min.js" "%1"
start javaw.exeは、バッチファイルの実行時にコマンドウィンドウを閉じます。
echo path of this file name is: %~dp0
echo file name of this file without extension is:%~n0
echo file extention of this file is:%~x0
echo The file name of this file is: %~nx0
YUIコンプレッサーに送信する出力ファイル名を決定する独自のクラスを作成します。
Java.exe -cp yuicompressor-2.4.2.jar MyClass "%1"