哪些 Windows 相关文件对于 *nix 用户来说毫无价值?

哪些 Windows 相关文件对于 *nix 用户来说毫无价值?

从使用 Windows 以来,我积累了大量保留的文件系统副本以及系统和数据驱动器的存档。我试图将它们提炼成可用的部分,同时丢弃所有可能毫无价值的东西。

从观看一堆上述文件在复制时滚动,再次从保留驱动器到工作驱动器,我想我已经开始了“好”和“无用”文件的启动列表,但我想知道是否有是否有任何权威类型的文件列表(来自以前的 Windows 环境)应该因无用而立即丢弃?

获奖者:(我知道如果努力使其全面,这个列表可能会变得一团糟,所以这些不是我要找的,除非它们可能被垃圾包围,可能会无意中毁掉它们)(编辑:如果唯一的方法是超全面的基于白名单的方法,那就这样吧。我希望情况并非如此,但乞丐不能挑剔……大多数时候。

*.tar.*, *.rar, *.zip
*.mp(e)g, *.avi, *.mkv, *.wmv, *.asf

失败者: (这些才是我真正想要的)

*.exe, *.bat, *.dll, *.com, *.lnk

我也知道会有例外。就像安装程序 .exe 文件一样,用于在 Wine 中安装某些东西。就这个问题而言,这种担忧并不是一个问题。所有有问题的文件都是副本(副本,甚至可能是更多副本),因此我真正想要保留的安装程序位于良好、安全且可能受写保护的地方。

答案1

只有您知道您需要/想要保留什么。但是,您可以,在某种程度上,识别Windows系统文件和其他已安装的程序文件。

在虚拟机中重新安装 Windows 和这些程序,然后创建两个列表全部虚拟机中的文件名;

  1. 在VM中,制作新安装的系统的第一个列表

      dir /S /B /A-D C:\ >vmlist.1

  2. 在VM中,制作更新后系统的第二个列表

      dir /S /B /A-D C:\ >vmlist.2  

  3. 回到 *nix,合并这两个文件并删除重复的行。

      sort -u vmlist.1 vmlist.2 >vmlist  

  4. 该列表现在看起来像这样(当然,但更长):

      C:\name with 6 special chars [$.^|]
      C:\Windows\System32\asr_fmt.exe
      C:\Windows\System32\asr_ldm.exe
      C:\Windows\System32\asr_pfu.exe
     

  5. 现在将列表转换为regex适合的模式grep

    sed -r 's/\\/\//g; s/[]$.^|[]/\\&/g; s/^[[:alpha:]]:/^.*/; s/$/$/' vmlist >vmlist.rex

  6. 正则表达式列表将如下所示。

      ^.*/name with 6 special chars \[\$\.\^\|\]$
      ^.*/Windows/System32/asr_fmt\.exe$
      ^.*/Windows/System32/asr_ldm\.exe$
      ^.*/Windows/System32/asr_pfu\.exe$

  7. 列出目标归档目录中包含的文件

      find '/my/archive/dir' -type f >arclist

  8. 现在做一个子列表来自与arclisl正则表达式模式匹配的文件。

      <arclist grep -f vmlist.rex >arcmatches  

  9. arcmatches包含匹配的 Windows 文件。检查它们,当您对所看到的内容感到满意时将其删除。这是删除(remove)命令。

      <arcmatches xargs -d'\n' rm -v


答案2

清除垃圾的最简单方法可能是根据创建日期或上次修改日期(您可能需要进行试验以确定哪个更好) - 只需使用系统安装日期作为起点即可。

根据帕累托原理,简单的过滤器可能会获得您所寻求的 80% 的效果。

(当然,您可以,甚至应该,将此列表与您已经开始收集的黑白名单结合起来。)

答案3

thumbs.db据我所知,该文件在类 Unix 系统上毫无用处。

它是一个(可能是隐藏的)文件,用于在 Windows 系统上缓存图像的缩略图。由于每个图像文件夹在查看文件夹的图像时都有自己的图像thumbs.db,因此您的硬盘上可能会有相当多的此类内容,具体取决于图像文件夹的数量。

我不知道每个 *nix 是如何处理缩略图的,但至少在我的情况下(Ubuntu/GNOME),所有缩略图默认都保存在一个地方:我的主目录中的文件夹(以及像和.thumbnails/一样的子文件夹中) 。因此,当我从 Windows 迁移到 Linux 时,我删除了所有这些文件。.thumbnails/normal.thumbnails/largethumbs.db

答案4

C:/pagefile.sys

在 C:/ 的根目录中,pagefile.sys 应该是一个相当大的文件,您不再需要它了。

在大多数情况下,整个 Windows-Dir 没有用 - 除非使用模拟器、虚拟机。

字体可能是一个例外(至少 *.ttf/ *.TTF)。

相关内容