Home

Macでターミナルの履歴をチェックおよびクリアする方法は?(Zsh/Bash)

Updated on 2024年4月29日月曜日

iBoysoft author JackYamamoto

Written by

JackYamamoto
Professional tech editor

Approved by

Jessica Shee

やまと English Français Deutsch Español Português

Macのターミナルでコマンド履歴をクリアする方法は?

MacのTerminalアプリは、ZshやBashのようなシェル環境でコマンドラインを使用してオペレーティングシステムと対話することができます。このようなシェル環境では、上下矢印キーを押すことで以前のコマンドを参照するためのコマンド履歴が保存されます。

同じコマンドを再入力せずに使用するのは便利ですが、他のアカウントにアクセス権がある人がコマンド履歴を簡単に表示できるため、プライバシーが危険にさらされることもあります。また、セッションのコマンド履歴をクリアして新しい状態で開始したい場合もあります。

この記事では、Macでのターミナル履歴を永久的および一時的にクリアする方法について説明します。

Macでターミナル履歴を確認する方法

通常、以下の2つの方法のいずれかを使用してMacでターミナルの履歴を確認できます:

履歴コマンドを実行して最新のターミナル履歴を確認する。

  1. ターミナルを起動します。
  2. 以下のコマンドを入力してEnterキーを押します。historyMacでターミナル履歴を確認する方法
  3. 過去に実行した最新の16のコマンドを表示します。

履歴ファイルを開いてすべてのターミナル履歴を表示する。

  1. ターミナルを開きます。
  2. シェル環境に適したコマンドを入力してEnterキーを押します。cat ~/.zsh_historycat ~/.bash_historyMacですべてのターミナル履歴を表示する方法
    ✳︎ Zsh (%)はmacOS 10.15 Catalina以降のデフォルトシェルです。Bash ($)はmacOS 10.14 Mojave以前のデフォルトシェルです。
  3. ターミナルで以前に使用したすべてのコマンドのリストを確認します。

他の人がターミナルのコマンド履歴を確認するための手順を共有しましょう。

 

Macでターミナル履歴をクリアする方法

ZshまたはBashでMacのターミナル履歴をクリアする方法は2つあります。これらはmacOS Monterey、Big Sur、Catalinaなどの任意のMac OS XまたはmacOSバージョンでターミナル履歴をクリアするために使用できます。

コマンド履歴のクリア(現在のセッションのみ)

現在のターミナルセッションで入力したコマンドのリストを削除し、履歴ナビゲーション機能(上矢印キー、下矢印キーなど)を介して表示やアクセスできなくするには、historyコマンドを使用することができます。

これは過去のセッションのコマンドを保持する永続的な履歴ファイルには影響しません。

Zshユーザーの場合:

history -p

Macで現在のセッションのターミナル履歴をクリアする方法

Bashや他のシェルユーザーの場合:

history -c

 注: Zshシェルで「history -c」と実行すると、「history: bad option: -c」というエラーが表示されます。

Macのターミナルでコマンド履歴を削除する方法

ターミナルのコマンド履歴全体をクリアする場合は、隠し履歴ファイルである~/.zsh_historyまたは~/.bash_historyを削除することができます。このファイルは、ターミナルアプリを再度開いてから新しいコマンドを実行すると再生成されます。

すべてのターミナル履歴が永久に削除されるので、実行する前に確認してください。

Macでターミナル履歴を永久にクリアする方法(Zsh/Bash):

  1. 複数のターミナルセッションがある場合、それ以外を閉じて1つだけ開いておいてください。
  2. 現在のセッションの履歴をクリアします。
    Zshユーザーの場合: history -pBashユーザーの場合:history -c
  3. 履歴ファイルを削除してコマンド履歴を永久に削除します。
    Zshユーザーの場合:rm ~/.zsh_historyMacでターミナル履歴を永久にクリアする方法
    Bashユーザーの場合:rm ~/.bash_history
  4. ターミナルを閉じて再度開きます。

上記の手順を実行した後、rmコマンド自体と削除プロセスの実行時にファイルに書き込まれなかったコマンドを除く、すべてのコマンド履歴が削除されているはずです。

この投稿が役に立った場合は共有してください!