web-dev-qa-db-ja.com

Linux Mintで最近開いたファイルの履歴をクリアする

世帯内の他の人が一時的に自分のコンピューターを使用している場合がありますが、そうした場合でも、自分のファイル履歴を見せたくないことがあります。 Bashがエントリを~/.bash_historyファイルに一時的に書き込むのを防ぐ方法を知っています。たとえばeogでファイルを表示して、メニューに表示される履歴を消去するにはどうすればよいですか?

シェルから最近の履歴をすばやく消去できますか。これは、メニューに移動して[最近使用したファイル]をクリックし、削除するすべての名前をスクロールして[リストをクリア]をクリックすることで、面倒ではっきりと見えるパスを使用する必要はありません。

7
Susee

履歴は~/.local/share/recently-used.xbelにありますが、そのファイルを削除するだけでは不十分です。 Recent Filesエントリを実行すると、アクセスしたファイルが引き続き表示され、Recent Filesエントリを作成するアプリケーションでファイルを開くと、および古いファイルのリストになります。そのファイルに再度書き込まれます。

あなたがしたいことは、ファイルを削除してからそれを空にするためにエイリアスまたはスクリプトを作成することです:

rm ~/.local/share/recently-used.xbel
touch ~/.local/share/recently-used.xbel

または行う:

echo -n '' > ~/.local/share/recently-used.xbel

目立たなくしたい場合は、ファイルを編集して、履歴に残したくないエントリを削除することもできます。これは、コンテンツへのURIを含むhref属性を持つ<bookmark>エントリを持つXMLファイルです。

たとえば、デスクトップでクリックした、ファイル名がfoodで始まるエントリを削除するには、次のxmlstarletを使用します。

xmlstarlet ed -L -d "/xbel/bookmark[starts-with(@href, 'file:///home/$USER/Desktop/food')]" ~/.local/share/recently-used.xbel
12
Anthon