如何通过终端找到最近使用的文件?

如何通过终端找到最近使用的文件?

我想查看最近使用(访问)的文件及其通过终端的路径。

我怎样才能获取该文件列表?

笔记:这个问题不是重复的使用终端显示最近修改/创建的文件

答案1

它适用于具有nautilus默认文件管理器的 Ubuntu 系统。

在终端上运行以下命令来查看最近访问的(又名查看的)文件。

sed -nr 's/.*href="([^"]*)".*/\1/p' ~/.local/share/recently-used.xbel

所有最近访问的文件的信息都存储在这个特定的~/.local/share/recently-used.xbel文件中。上面的命令只提取了文件及其路径。

命令解释:

sed -nr 's/.*href="([^"]*)".*/\1/p' ~/.local/share/recently-used.xbel

-n --> 禁止自动打印模式空间

-r --> 扩展正则表达式。如果我们使用 sed -r,那么我们就不必转义某些字符,例如((){}等)

's/.*href="([^"]*)".*/\1/p'--> sed 在输入文件中搜索包含此( ) 正则表达式的行.*href="([^"]*)".*。如果找到,则它仅抓取href=( href="") 之后双引号内的字符并将其存储在组中。只有存储的组通过反向引用( ) 打印\1

例子:

$ sed -nr 's/.*href="([^"]*)".*/\1/p' ~/.local/share/recently-used.xbel
file:///media/truecrypt8/bar.txt
file:///media/truecrypt8/picture.txt
file:///media/truecrypt8/bob.txt
file:///media/truecrypt8/movie.txt
file:///media/truecrypt8/music.txt
file:///media/truecrypt8/foo.txt

如果您希望输出格式化,请运行此命令,

$ sed -nr 's/.*href="([^"]*)".*/\1/p' ~/.local/share/recently-used.xbel | sed 's|\/\/| |g'
file: /media/truecrypt8/bar.txt
file: /media/truecrypt8/picture.txt
file: /media/truecrypt8/bob.txt
file: /media/truecrypt8/movie.txt
file: /media/truecrypt8/music.txt
file: /media/truecrypt8/foo.txt

相关内容