查找哪个程序创建了特定文件

查找哪个程序创建了特定文件

我正在我的 Ubuntu 16.04 电脑上制作一个应用程序,我想清理我的家,因为我安装和卸载了很多程序,现在我家里有很多文件不是​​我的,而是一些程序留下的。这些文件是隐藏的 ( .filename),但我不想让它们在那里。

最后,我知道我可以使用命令

sudo ls -la

但群主显示的是这样的:

-rw-------  1 owner group    1194 Dez 21 10:53 XXXXXXXXXX.old

但我真正想知道的是谁创建了该文件,谁使用了它,什么程序...因为如果创建该文件的程序不再安装,我想删除该文件。

我如何知道哪个程序创建了该文件?

答案1

一般来说,如果你运行一个创建文件的程序,那么该文件将归你的用户所有。无法知道哪个程序创建了它。例如,如果我用不同的程序创建了两个相同的文件:

$ bash -c "echo hello > file1"
$ sh -c "echo hello > file2"

文件属性中没有任何内容可以区分这些文件:

$ ls -l file1 file2
-rw-rw-r-- 1 user group 6 Dec 21 11:47 file1
-rw-rw-r-- 1 user group 6 Dec 21 11:47 file2

但你可能会发现一些线索:

  • 在路径名中,例如~/.thunderbird/~/.zshrc

  • 在文件本身中,例如~/.zcompdump包含 shell 数组,并且z文件名中的 使我认为 Zsh 创建了它。

    file实用程序可能对识别文件类型有用。(我想不出一个很好的例子,但用法就像file ~/.zcompdump,打印/home/user/.zcompdump: ASCII text

相关内容