清除 Linux Mint 上最近打开的文件历史记录

Sus*_*see 9 command-history linux-mint files cinnamon

有时我家里的其他人会短暂地使用我的电脑,当他们使用我的电脑时,我有时不希望他们看到我的文件历史记录。我知道如何防止 Bash~/.bash_history临时将条目写入文件。如何擦除菜单中显示的历史记录,例如在 中查看的文件eog

你能快速从 shell 中清除最近的历史记录吗?无需使用繁琐且清晰可见的路径,方法是转到菜单,单击“最近使用的文件”,滚动浏览我要删除的所有名称,然后单击“清除列表”?

Ant*_*hon 14

历史记录在~/.local/share/recently-used.xbel但不足以删除该文件。如果您这样做,该Recent Files条目会继续显示您访问的文件,并且如果您使用创建最近文件条目的应用程序打开文件,则该文件和旧文件列表将再次写入该文件。

您想要做的是创建一个别名或脚本来删除文件,然后将其触摸为空:

rm ~/.local/share/recently-used.xbel
touch ~/.local/share/recently-used.xbel
Run Code Online (Sandbox Code Playgroud)

或做:

echo -n '' > ~/.local/share/recently-used.xbel
Run Code Online (Sandbox Code Playgroud)

如果您想不那么显眼,您还可以编辑文件并删除历史记录中不需要的任何条目。它是一个 XML 文件,其<bookmark>条目的href属性包含内容的 URI。

例如,您可以使用xmlstarlet以下命令删除您在桌面上单击的文件名以 food 开头的任何条目:

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