2016-08-31 5 views
1

Powershell Version 2.0に同梱されているWin7マシンまでの後方互換性が必要なPowershellスクリプト(Win10マシン上)を作成しています。 ISEのコマンドセットを2.0で使えるコマンドだけに制限したいのですが、スクリプトを書いている間にそのバージョンや何かの外に迷ったらエラーを投げてしまいます。これは簡単な方法ですか?バージョンによるPowershellコマンドの制限

+0

ISEをそうした方法で設定する方法はわかりませんが、少なくとも、コマンドラインのバージョン2に対して、 'powershell -version 2'を実行してスクリプトをテストできます。 – Poorkenny

+0

[PowerShell ISEを2.0ランタイムで起動]を参照してください(http://stackoverflow.com/a/35705076) – wOxxOm

答えて

3

ISEでの方法は、(私はないと思う)があるかどうかは分かりませんが、あなたは2.0モードで別々にプロンプ​​ト(コンソールのホスト)を起動することができます。

powershell.exe -Version 2.0 

あなたが一緒にこれを使用することができますISEでスクリプトを編集して保存し、コンソールホストでスクリプトを実行します。理想的ではありませんが、回避策の悪いことではありません。

+0

これは動作します!コンソールホストを使用して、ISEで使用する前に使用したいコマンドが存在することを確認します。 –

-1

スクリプトの先頭にrequiresディレクティブを含めることもできます。

#requires -version 5

使用など、あなたのスクリプトが必要ですバージョンの正しい番号、2、3、4、

これは、ISEに動作することを確認します。

+0

これはポスターが尋ねたことをしません。これは特定の(最大)バージョンのものだけに利用可能なコマンドを制限するものではなく、特定の_最小限のバージョンが利用可能でない限り、スクリプトの実行を許可しません。 – briantist

+0

うわー...いいキャッチ、@briantist –

関連する問題