3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

初心者向け:Windows PowerShellのディレクトリパス表示を変更する方法

3
Posted at

目次

  1. はじめに
  2. PowerShellとコマンドプロンプトの違い
  3. PowerShellで一時的に変更する方法
  4. PowerShellで設定を保存して常に適用する方法
  5. よく使われるプロンプトのカスタマイズ例
  6. 現在地を確認する方法
  7. まとめ

はじめに

Zoomなどのオンライン会議で画面共有をする際に、ディレクトリパスが見えてしまうのは避けたいところです。

以前の記事で、Macのzshでターミナルのプロンプト(コマンド入力の準備ができていることを示す表示)をカスタマイズする方法を紹介しました。今回はその続編として、Windows環境でのPowerShellプロンプトのカスタマイズ方法をまとめます。

PowerShellとコマンドプロンプトの違い

WindowsにはPowerShell(より高機能なコマンドライン環境)とコマンドプロンプト(従来からあるシンプルなコマンドライン環境)という2つのコマンドライン環境があります。

この記事ではPowerShellでの設定方法を紹介します。コマンドプロンプトでのプロンプト変更はレジストリ(Windowsのシステム設定を保存する場所)の編集が必要で、初心者には難易度が高いため、PowerShellの使用をおすすめします。

PowerShellの起動方法

Windows検索で「PowerShell」と入力して、「Windows PowerShell」を選択すると起動できます。また、Windows 11ではWin + Xキーを押して「ターミナル」を選択するか、Windows検索で「wt」と入力してWindows Terminalから起動することもできます。

image.png

PowerShellで一時的に変更する方法

まずは試しに、今開いているPowerShellウィンドウだけで表示を変更してみます。以下のコマンドを入力してください。

function prompt { "PS> " }

このコマンドを実行すると、プロンプトがPS>だけのシンプルな表示になります。カレントディレクトリ(現在作業しているフォルダの場所)が非表示になり、すっきりした見た目になります。

この方法は一時的な変更なので、PowerShellを閉じたり再起動したりすると元に戻ります。常に適用したい場合は、次のセクションで説明するプロファイルファイルの編集が必要です。

PowerShellで設定を保存して常に適用する方法

PowerShellを再起動しても設定を維持するには、プロファイル(PowerShell起動時に自動で読み込まれる設定ファイル)を編集します。

【プロファイルの場所を確認する】

まず、以下のコマンドでプロファイルファイルの場所を確認します。

$PROFILE

通常、以下のようなパスが表示されます。

C:\Users\username\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

【プロファイルが存在するか確認する】

プロファイルファイルが既に存在するかを確認します。

Test-Path $PROFILE

Trueと表示されればファイルが存在し、Falseと表示されれば存在しません。

【プロファイルを作成する(存在しない場合)】

ファイルが存在しない場合(Falseと出力された場合)は、以下のコマンドで作成します。

New-Item -Path $PROFILE -ItemType File -Force

このコマンドで、必要なフォルダも含めてプロファイルファイルが作成されます。

【プロファイルを編集する】

以下のコマンドでプロファイルファイルを開きます。

notepad $PROFILE

メモ帳が開くので、次のセクションで紹介するいずれかの設定を貼り付けてください。既に他の設定が書かれている場合は、その下に追加する形で問題ありません。

【保存して閉じる】

メモ帳で設定を追記したら、ファイル上書き保存を選択して保存し、メモ帳を閉じます。

【設定を反映させる】

最後に、以下のコマンドでプロファイルを読み込み直します。

. $PROFILE

よくある間違い

コマンドの先頭にある.(ドット)とその後の空白を忘れないでください。. $PROFILEのように入力します。

これで、次回PowerShellを開いたときから新しいプロンプトが適用されます。

実行ポリシーのエラーが出る場合

初めてプロファイルを使用する際に、「スクリプトの実行が無効になっています」というエラーが出ることがあります。この場合は、以下のコマンドで実行ポリシー(スクリプトの実行を制御するセキュリティ設定)を変更してください。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

このコマンドは、現在のユーザーに対してローカルで作成したスクリプトの実行を許可します(インターネットからダウンロードしたスクリプトには署名が必要)。

よく使われるプロンプトのカスタマイズ例

プロファイルに追記する設定のバリエーションをいくつか紹介します。自分の用途に合ったものを選んでください。

【完全にシンプルにする】

カレントディレクトリを含め、すべての情報を非表示にします。

function prompt { "PS> " }

表示例はPS>だけになります。

【現在のフォルダ名だけ表示する】

フルパスではなく、今いるフォルダの名前だけを表示します。

function prompt { "$(Split-Path -Leaf (Get-Location))> " }

表示例はproject>のようになります。C:\Users\username\Documents\projectにいても、projectだけが表示されます。

【ユーザー名と現在のフォルダ名を表示する】

自分が誰として作業しているかと、今いるフォルダを確認できるようにします。

function prompt { "$env:USERNAME $(Split-Path -Leaf (Get-Location))> " }

表示例はusername project>のようになります。

【時刻を含める】

コマンドを実行した時刻を記録したい場合に便利です。

function prompt { "[$(Get-Date -Format 'HH:mm:ss')] PS> " }

表示例は[14:30:45] PS>のようになります。

カスタマイズのヒント

function prompt { }の中身を自由に組み合わせることで、より細かいカスタマイズができます。たとえば、"$env:USERNAME@$(hostname) $(Split-Path -Leaf (Get-Location))> "のように記述すると、ユーザー名とコンピューター名、フォルダ名を表示できます。

現在地を確認する方法

プロンプトからカレントディレクトリを非表示にすると、今どこにいるのかわからなくなることがあります。そんなときはpwdコマンド(現在のディレクトリのフルパスを表示するコマンド)を使用してください。

pwd

実行すると、以下のように現在の場所が表示されます。

Path
----
C:\Users\username\Documents\project

PowerShellではGet-Locationコマンドでも同じ結果が得られます。

Get-Location

このコマンドはいつでも使えるので、必要なときだけ確認できます。

まとめ

PowerShellのプロンプトは、function promptを定義することで自由にカスタマイズできます。画面共有時の情報漏洩を防ぎたいときや、シンプルな表示で作業に集中したいときに便利な設定です。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?