.jsファイルをまとめて圧縮し、古いものを同じフォルダ内の新しいものと置き換えるスクリプトを作成したいと考えています。私はいくつかのことを試しましたが、何か新しい問題に常に直面していることがわかったので、私がやり始めたことをよりよく理解している人に向けるのが最善であると思いました。PowerShellによる自動JavaScript圧縮
誰でも正しい方向に向けることができますか?
アップデート:私はこのようなコマンドのセットを使用しています :
>Get-ChildItem c:\NewFolder\ -recurse |
&java -jar yuicompressor-2.4.6
それはしかし、出力の使用のこれらの並べ替えを可能にしたいようですが、いないようです。私はこの作業を行う方法があると確信していますが、PowerShellにはまだまだ新しいものですが、私自身はまだ自信がありません。
更新: 以下の推奨コマンド文字列を使用すると、私は新しく圧縮された.jsから読み込まれたようなものを与えるためにpowershellを得ることができますが、既存のファイルを圧縮したものに置き換えたり、私は[filename] .min.js形式で同じディレクトリにあると信じている標準に。
更新: 推奨コマンドの変更されたバージョンがトリックを行うようです!
>Get-ChildItem c:\NewFolder\ -exclude jquery*.js,*min.js -recurse | %{java -jar yuicompressor-2.4.6.jar ($_.fullname) -o ($_.fullname)}
しかし、PowerShellのコマンドを実行すると、奇妙なことに、私はJavaコマンドについてのPowerShellからエラーメッセージを取得しています...
のjava.exe:4文字:行: 72 + Get-ChildItem c:\ Scripts \ -exclude jquery * .js、* min.js -recurse | %{ジャワ< < < < -jar yuicompressor-2.4.6.jar($ .fullname) -o($ .fullname)} + CategoryInfo:NotSpecified:(:String)を[]、RemoteExceptionを + FullyQualifiedErrorId。 NativeCommandError使用方法:この情報 --typeを読む--charset入力ファイル の種類を指定し表示します。java -jar --help yuicompressor-xyzjar [オプション]、[入力ファイル]
グローバルオプション -h、入力ファイル を使用する - 改行指定した列番号の後に改行を挿入する -v、--verbos e情報メッセージと警告を表示します。 -o出力を置きます。デフォルトはstdoutです。 複数のファイルは、次の構文を使用して処理できます。 java -jar yuicompressor.jar -o '.css $: - min.css' * .css java -jar yuicompressor.jar -o '.js $: - min。 jsの*入力ファイルが指定されていない場合
JavaScriptのオプションnomunge縮小化が唯一、 難読化していない保存半は、それが標準入力に、すべてのセミコロンは 無効-最適化が
すべてのマイクロ最適化を無効にし、デフォルトを保存.jsファイル。この場合、「タイプ」オプションの が必要です。それ以外の場合は、入力ファイルの拡張子が 'js'でも 'css'でもない場合にのみ 'type'オプションが必要です( )。
PowerShellが私に教えようとしていることは何ですか?
提案をいただきありがとうございます。間違いなく私を近づけますが、私はまだ正確にはありません。あなたのコマンドは各ファイルの圧縮を実行しているようですが、以前の圧縮されていないファイルや、[filename] .min.jsなどの別の名前でも出力.jsに書き込まれません。私は元の質問に上記の情報を追加します – ShowStopper
あなたは実際に私が思ったよりもはるかに近づいている - あなたは本質的に私に答えを与えたmanojldsもう一度、非常にあなたの助けてくれてありがとう!私はあなたの名前を認識しているので、以前の私の質問ではあなたからの回答はありませんが、他の人の質問に単に答えるだけで、過去に私を助けてくれたことは間違いありません。また、ここであなたの役割をいただきありがとうございますstackoverflow.com。私はそれが頻繁に言われていないと確信していますが、私はあなたの助けがコミュニティによって非常に高く評価されたと思います。 – ShowStopper
@ShowStopper - これがあなたの問題を解決した場合、答えとしてマークする必要があります(各回答で選択できるチェックマークがあります)。ボーナスポイントの場合は、同様に回答をアップすることもできます。 –