✨
コマンドプロンプトやPowerShell等のターミナル設定を初期化する方法
普段、コマンドプロンプトやPowerShell等のターミナルをお気に入りの配色やフォントで使うと楽しくなるが、カスタマイズしすぎて元に戻したくなった場合にターミナル設定を初期化する方法を備忘録として書く。
ターミナル設定はどこに保存されているのか
設定が保存されている場所は複数あり、以下の順で読み込まれる。
-
conhostv2.dllでハードコーディングされた設定 - レジストリ
HKEY_CURRENT_USER\Consoleにある、ユーザが構成した設定
(既定値で設定したもの) - レジストリ
HKEY_CURRENT_USER\Console\{サブキー}にある、ターミナルアプリケーション毎の設定
(ターミナルアプリケーションを直接起動し、プロパティで設定したもの) - ショートカット
(.lnk)ファイル内の設定
(ターミナルアプリケーションをショートカット経由で起動し、プロパティで設定したもの)
以下のサイトに詳しく説明がある。
方法
ターミナル設定が保存されたレジストリの削除
-
Win+Rでファイル名を指定して実行を開く -
regeditを入力してEnterを押す - 左側のツリーから
HKEY_CURRENT_USER\Consoleを探し、右クリック >削除
オリジナルのショートカットをもらってくる
今回はオリジナルのショートカットが欲しいので、新規ユーザアカウントを作成する際に用いられる既定のプロファイルのテンプレートよりもらってくる。
コマンドプロンプト
コマンドプロンプトは、基本的にスタートメニューなどから起動する場合が多いはず。
これは、%AppData%\Microsoft\Windows\Start Menu\Programs\System Tools 内のショートカット経由で起動している。
PowerShellで下記コマンドを入力することでオリジナルのショートカットに上書きされる。
Copy-Item -Path ($Env:SystemDrive + "\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\System Tools\Command Prompt.lnk") -Destination ($Env:AppData + "\Microsoft\Windows\Start Menu\Programs\System Tools") -Force
PowerShell
PowerShellは、基本的にスタートメニューもしくは Win + X > I などから起動する場合が多いはず。
これは、%AppData%\Microsoft\Windows\Start Menu\Programs\Windows PowerShell 内のショートカット経由で起動している。
PowerShellで下記コマンドを入力することでオリジナルのショートカットに上書きされる。
@("", " (x86)") | ForEach-Object -Process {Copy-Item -Path ($Env:SystemDrive + "\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Windows PowerShell\Windows PowerShell" + $_ + ".lnk") -Destination ($Env:AppData + "\Microsoft\Windows\Start Menu\Programs\Windows PowerShell") -Force}
初期化完了
コマンドプロンプト
PowerShell
あとがき
これらの作業を一発で実行出来るツールを作成したいところ。
この記事を書く上でPowerShellのコマンドを調べる機会があったが、日常的に使いこなせるように勉強していきたいと思う💪
Discussion