Powershell で $Home のようなカスタムのグローバル システム全体の変数を作成し、それに永続的な値を割り当てるにはどうすればよいでしょうか?

Powershell で $Home のようなカスタムのグローバル システム全体の変数を作成し、それに永続的な値を割り当てるにはどうすればよいでしょうか?

私は Powershell を学び始めたばかりですが、すでに 1 つのことが気になり始めています。

$env:Homeとの望ましくない、不当に紛らわしい区別$HOME。は>$HOMEと入力するだけで自動補完できますが、その反対語には>と入力する必要があります。$homTab$env:HoTab

$HOMEこれは、システムの再起動後もどの Powershell セッションでも保持される、ある種のグローバル変数であるというアイデアを得ました。

そこで質問です。このような永続的かつグローバルな変数を作成し、コマンド出力または環境変数出力、あるいはディレクトリ/ファイルの直接パスから値を割り当てるにはどうすればよいのでしょうか?

答え1

正解です。PowerShell$homeのグローバル変数です。これらは環境変数とは異なります。幸いなことに、独自の変数を作成できます。

目的を達成する 1 つの方法は、Powershell プロファイルを編集することです (@Lee_Dailey がコメントでこれについて言及しています)。

  1. まず、profile.ps1これを適用したいファイルを見つけます。
    これらは異なる場所にいくつかあり、それぞれ異なるユーザー/権限に対応しています。これ適用したいものを選択します。私は を使用しますC:\Users\<username>\Documents\WindowsPowerShell\profile.ps1
  2. 次のように変数を追加します。
$docs = "C:\Users\<username>\Documents"
# ^^^         ^^^
# name       value
  1. PowerShellを再起動します
  2. と同じ機能で使用できるようになりました$home
cd $docs 

関連情報