「実行」によるPowerShellの起動の違い-GUIとWin + X
Windows 10 v1909で管理者としてPowerShellを実行し、ターミナルウィンドウに変更を加えた場合(バッファーの変更など)、変更は必要に応じて保存されます。次に、バッファーサイズを999
次のように変更します。

しかし、私がそれを「同じ方法」で始めた場合に限ります。2番目の開始手順には、独自の「ストレージ」があるようで、同じ結果は得られません。
- コマンドを使用してダイアログの実行
powershell
と打つCtrl+ Shift+ OKを実行する(これは管理者として実行作ります
対
- Win + Xメニュー、選択
Windows PowerShell (Administrator)
いずれかの方法でPowerShellを開くと、(内部で)何が正確に異なりますか?[実行]ダイアログのスイッチを使用して、「同じ」Powershellを強制的に開くことはできますか?
私の最初の推測では、そこには2つのコピーがありますpowershell.exe
が、どちらのプロセスも、で同じバイナリを開始したこと%WinDir%\System32\WindowsPowerShell\v1.0
を示してPowerShell.exe
おり、一方はとして表示され、もう一方はとして表示されpowershell.exe
ます。Win + Xオプションを使用して、2番目のプロファイルを開始するための何らかのパラメーターのように見えますか?
回答
実行可能ファイルを実行してPowerShellを直接起動する場合:
- 32ビット:
%SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe
- 64ビット:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
⊞ Win+の下にXあるショートカットを使用したり、「PowerShell」を検索するときにスタートメニューにあるショートカットを使用したりするのとはまったく異なります。これらのショートカットはに保存され%AppData%\Microsoft\Windows\Start Menu\Programs\Windows PowerShell
、独自の設定を提供します。

元のクエリに戻ります...これは...
PowerShellを内部で開く場合の正確な違い
...それはまったく問題ではありません。WindowsPowerShellはOSの一部です。PowerShellの起動は、何があっても同じです。PowerShellの内部/外部起動の概念はありません。
実行コマンドcmd.exe、Win + Xなどを使用すると、これらはすべて毎回新しいPowerShellインスタンスであり、ストレージなどとは関係ありません。セッションで行う設定は、そのセッション専用です。
あなたはこれらの設定を保持したい場合は、これを行うための唯一の方法は、1である、デスクトップのショートカットを作成したり、既存のショートカットを変更し、(つまり、ショートカットを右クリックし、[プロパティ]をクリックします-ちょうどあなたが他のWindowsのショートカットと同じように)と、必要なプロパティを設定します。
PowerShellの2番目の方法は、PowerShellプロファイルを作成して使用することです。この日は、PowerShellトレーニングクラスの1時間1日です。
PowerShellディレクトリは、プロファイルを作成するか、手動で作成するまで存在しません。これは、@ JW0914がここで言おうとしていることです。powershell.exeを起動して、これを実行するだけです...
New-Item –Path $Profile –Type File –Force
.. powershell_ise.exeを起動して同じことを行うと、「WindowsPowerShell」ディレクトリが作成されます...
C:\ Users \ YourUserName \ Documents \ WindowsPowerShell
そして、2つのプロファイルは次のようになります
Microsoft.PowerShell_profile.ps1
Microsoft.PowerShellISE_profile.ps1
これらは単なる空のファイルであり、前述のように、ベースは選択した設定を設定できる場所であり、-noprofileパラメーターを使用してpowershell.exeまたはpowershell_iseを起動しない限り使用されます。
Powershellのヘルプドキュメントを参照してください。
これは、PowerShell Core(pwsh.exe)と呼ばれるPowerShellの別のバージョンであり、クロスプラットフォーム(Win / OSX / Linux)ですが、WindowsPowerShellをアップグレード/置換しません。それらは並んで実行するように設計されています。また、Windows PowerShellパスとは別に、独自のパスとプロファイルがあります。
C:\ Users \ YourUserName \ Documents \ PowerShell
Microsoft.PowerShell_profile.ps1
PowerShellCore用のISEはありません。PowerShellコア用のISEの代替は、Visual StudioCodeと呼ばれます。また、独自のプロファイルがあり、PowerShellフォルダーにある必要があります。
Microsoft.VSCode_profile.ps1