質問する質問する
 

回答済みpowershell -version オプションの意味

  • 2009年1月21日 2:56kw-shingo ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     

    PowerShell /? で表示される説明に

     

    -Version
        特定のバージョンの Windows PowerShell を起動します。

     

    と記載されていますがこれは具体的にどのような効果を持つものなのでしょう。

    V2 CTP3 で次のように試してみても何も変化がないように見えます。

    V1 にはないCmdLet(New-PSSession とか)も呼び出せるようですし。

     

    PS C:\> powershell -version 1
    Windows PowerShell V2 (Community Technology Preview - Features Subject to Change)
    Copyright (C) 2008 Microsoft Corporation. All rights reserved.

    PS C:\> $PSVersionTable

    Name                           Value
    ----                           -----
    CLRVersion                     2.0.50727.3053
    BuildVersion                   6.1.6949.0
    PSVersion                      2.0
    PSCompatibleVersions           {1.0, 2.0}


    PS C:\> powershell -version 2
    Windows PowerShell V2 (Community Technology Preview - Features Subject to Change)
    Copyright (C) 2008 Microsoft Corporation. All rights reserved.

    PS C:\> $PSVersionTable

    Name                           Value
    ----                           -----
    CLRVersion                     2.0.50727.3053
    BuildVersion                   6.1.6949.0
    PSVersion                      2.0
    PSCompatibleVersions           {1.0, 2.0}

     

回答

  • 2009年4月2日 4:08kw-shingo ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     回答済み
    Connect の方で質問していたら回答をもらえました。
    元々はサイドバイサイドで複数バージョンを使い分けられる計画だったそうです。
    ヘルプの記述はその名残でしょう。
    今は必要な最低のバージョン互換性を指定するという意味になっており、
    Version 2ではCTP3後でもこのまま変更はなさそうです。
  • 2009年1月21日 3:54Z9M9Z ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     回答済み

     

    PowerShell 1.0ですと

     

    >powershell -version 2.0
    Windows PowerShell バージョン 2.0 は正しくインストールされていないため、起動でき
    ません。

     

    >powershell -version 1.0
    Windows PowerShell
    Copyright (C) 2006 Microsoft Corporation. All rights reserved.

    となるので、2.0だとまだ実装されていない機能なのかもしれませんね。

     

すべての返信

  • 2009年1月21日 3:54Z9M9Z ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     回答済み

     

    PowerShell 1.0ですと

     

    >powershell -version 2.0
    Windows PowerShell バージョン 2.0 は正しくインストールされていないため、起動でき
    ません。

     

    >powershell -version 1.0
    Windows PowerShell
    Copyright (C) 2006 Microsoft Corporation. All rights reserved.

    となるので、2.0だとまだ実装されていない機能なのかもしれませんね。

     

  • 2009年1月21日 5:07kw-shingo ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     

    PowerShell 2.0 CTP3 でも

     

    PS C:\> powershell -version 3
    Cannot start Windows PowerShell version 3 because it is not correctly installed.

     

    なので何か実装はしているみたいです。

    ご指摘に刺激されて他の動きも試してみるとこうなります。

    (おなじくCTP3にて)

     

    PS C:\> powershell -version 3
    Cannot start Windows PowerShell version 3 because it is not correctly installed.
    PS C:\> powershell -version 3.0
    Cannot start Windows PowerShell version 3.0 because it is not correctly installed.
    PS C:\> powershell -version 2.1
    Cannot start Windows PowerShell. No version of Windows PowerShell compatible to 2.1 is installed.
    PS C:\> powershell -version 1.0
    Windows PowerShell V2 (Community Technology Preview - Features Subject to Change)
    Copyright (C) 2008 Microsoft Corporation. All rights reserved.

    PS C:\> powershell -version 1.5
    Cannot start Windows PowerShell. No version of Windows PowerShell compatible to 1.5 is installed.
    PS C:\> powershell -version 1.1
    Cannot start Windows PowerShell. No version of Windows PowerShell compatible to 1.1 is installed.
    PS C:\> powershell -version 0.9
    Cannot start Windows PowerShell version 0.9 because it is not correctly installed.

     

    “正しくインストールされていない” と

    “互換性のあるバージョンがインストールされていない” とが区別されています。

     

    $PSVersionTable の

    PSCompatibleVersions  の値と Major 番号との組み合わせ?

     

    どういうつもりのものか推測できるような気がしなくもありませんが、

     

    “特定のバージョンの Windows PowerShell を起動します。”

    "Starts the specified version of Windows PowerShell."

     

    という説明で想像される動作とは違うように思われますね。

     

     

     

     

  • 2009年4月2日 4:08kw-shingo ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     回答済み
    Connect の方で質問していたら回答をもらえました。
    元々はサイドバイサイドで複数バージョンを使い分けられる計画だったそうです。
    ヘルプの記述はその名残でしょう。
    今は必要な最低のバージョン互換性を指定するという意味になっており、
    Version 2ではCTP3後でもこのまま変更はなさそうです。
  • 2009年4月2日 14:52HIROsDotNetMVPユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     
    Connect の方で質問していたら回答をもらえました。
    元々はサイドバイサイドで複数バージョンを使い分けられる計画だったそうです。
    ヘルプの記述はその名残でしょう。
    今は必要な最低のバージョン互換性を指定するという意味になっており、
    Version 2ではCTP3後でもこのまま変更はなさそうです。

    なるほど、そういう背景があったんですね。
    勉強になりました。
  • 2009年4月9日 6:37中川 俊輔 ユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダルユーザーのメダル
     
    こんにちは。中川俊輔です。

    皆様、フォーラムのご利用ありがとうございます。

    kw-shingoさん、Connectからの情報を投稿していただき、ありがとうございます。
    同じ情報を探している方が見つけやすいように、回答マークをつけさせていただきました。

    また、勝手ながら、有用な情報と思われたため、Z9M9Zさんの回答にも回答マークをつけさせていただきました。

    今後ともフォーラムをよろしくお願いします。
    それでは!
    マイクロソフト株式会社 フォーラム オペレータ 中川 俊輔