とにかく、powershellスクリプトを実行せずにその正確性をテストすることです。UNIXでも同様のことができることは知っていますが、powershellの同等のものを見つけることができません。
基本的に私が持っているのは、各スクリプトがルールに関連付けられているスクリプト リポジトリです。ルールが適用されるとスクリプトが実行されますが、スクリプトをリポジトリに配置する前に、そのスクリプトが有効であることを確認する必要があります。
ありがとう。
残念ながら、-whatif コマンドでは十分ではありません。エンジン ルールが起動した場合にスクリプトを起動する C# ランタイム エンジンからチェックしたいスクリプトの構文です。スクリプトを起動する前に、ルールから IList 値を書き込んでから起動します。しかし、それが構文的に正しいことを確認する必要があります。そうでなければ、ルールライターに頼ってそれらが正しいことを確認する必要があります。エンジンダウン。エンジンはシックス シグマのアップタイム用に設計されたエンタープライズ クラスの製品であるため、それはできません。
それを行う方法は、v2 lib である this を使用することだと思います。
http://msdn.microsoft.com/en-us/library/system.management.automation.parseexception(VS.85).aspx
ScriptBlock を作成し、その周りに try catch を配置して、ParseException をキャッチする方法があると思います。誰かがそれを行う方法を教えてもらえますか。これは真の課題になりつつあります。
ありがとう。
ねえ、私はMSの人(彼はsharepoint pmです)と話し、彼はpowershellの人の一人と話しました.Powershell v1には実行せずにスクリプトの構文をチェックする実際の方法はない. したがって、-whatif フラグが最も近いと思いますが、残念ながら静的チェッカーではありません。v2 では、Automation.PsParser クラスの Tokenize メンバーを使用して、入力ストリームをトークン化する方法があります。これは、PS grammes に従ってスクリプトをトークン化するため、それがクラップアウトする場合は、クラップ スクリプトです。質問は、v2 にはまだリリース日がありません。
手伝ってくれてありがとう。ボブ。