それはあなたがしようとしている機能の変更の種類にある程度依存します。私たちの環境では、かなり標準的なPSインストールを展開してから、サーバー上の共有フォルダーからスクリプトを実行するために、全員のプロファイルに1行を追加します。次に、そのスクリプトで、すべての人に適用したいカスタマイズを行うことができます。
マシン固有のMSプロファイル(%Windir%のプロファイル)に行を追加します。これは意図的な選択でした。これは、ユーザーが基本的に本番ボックスでのみ取得できるようにするためです。そうすれば、何かを書くときに、テストボックスにすばやくログインしてスクリプトを実行し、これらのカスタマイズに依存することなくスクリプトが展開されることを確認できます。
現在、カスタマイズはかなりありふれたものです。ほとんどの場合、追加された関数とエイリアスがいくつかあります。また、PowerShell専用にC#で記述したロガーがあるため、同じネットワークフォルダーにあるdllからロガーが読み込まれます。
私は自分の環境で遊んでいるので、これを自分のプロファイルに入れています:)
$ProfileDir = ([System.IO.Directory]::GetParent($profile)).FullName
$localMSProfile = "$PShome\Microsoft.Powershell_profile.ps1"
$localAllProfile = "$PShome\profile.ps1"
$userAllProfile = "$ProfileDir\profile.ps1"
$userMSProfile = "$ProfileDir\Microsoft.Powershell_profile.ps1"
$allProfiles = ($localAllProfile, $localMSProfile, $userAllProfile, $userMSProfile)