38

私はこの奇妙な状況にあります:

ユーザーとシステムのPATH変数は、PowerShellのPATHとは異なります。

私がする時 :

PS C:\$env:path
C:\Windows\System32\WindowsPowerShell\v1.0\;c:\oldpath

ただし、これは正しくありません。システムの古いPATH変数にスタックしているように見えるため、これまでに行った更新のいずれもこの変数を変更しませんでした(テストするために変更するたびに再起動します)。

なぜこうなった?PowerShell専用にPATH変数を設定する必要がありますか?

4

2 に答える 2

62

変更が「遅延」する可能性があるため、次の1つ以上の解決策を試してください。

  • ログオフして再度ログオンします。
  • タスクマネージャー> 「Windowsエクスプローラー」(explorer.exe)を再起動します
  • ランチャーアプリを再起動します(launchy、SlickRunなど)
  • リブート

説明:
Powershellは、Powershellを起動したプロセスの環境を継承します(起動方法によって異なります)。これは通常、インタラクティブシェル(explorer.exe)です。コンピューターのプロパティから環境を変更する場合は、explorer.exeの環境を変更するため、explorer.exeから(たとえば、スタートメニューから)PowerShellを起動すると、新しい環境が表示されます。

ただし、他の何か(たとえば、既に開いているcmd.exeシェル)から起動した場合、そのプロセスは古い環境で起動されたため、起動しません。

言い換えれば、物事をどのように立ち上げるかに注意してください。

于 2009-02-13T18:16:31.783 に答える
3

私の場合、powershell$env:PATHを起動するたびに既存の構成をオーバーライドして吹き飛ばす powershell プロファイルを作成することで、自分自身を誤って PATH に追加するアプリをインストールしました。

にプロファイルがあるかどうか、USER\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1および設定のような怪しいことをしていないかどうかを確認してください$env:PATH

于 2020-04-23T18:08:56.007 に答える