从使用 Windows 以来,我积累了大量保留的文件系统副本以及系统和数据驱动器的存档。我试图将它们提炼成可用的部分,同时丢弃所有可能毫无价值的东西。
从观看一堆上述文件在复制时滚动,再次从保留驱动器到工作驱动器,我想我已经开始了“好”和“无用”文件的启动列表,但我想知道是否有是否有任何权威类型的文件列表(来自以前的 Windows 环境)应该因无用而立即丢弃?
获奖者:(我知道如果努力使其全面,这个列表可能会变得一团糟,所以这些不是我要找的,除非它们可能被垃圾包围,可能会无意中毁掉它们)(编辑:如果唯一的方法是超全面的基于白名单的方法,那就这样吧。我希望情况并非如此,但乞丐不能挑剔……大多数时候。)
*.tar.*, *.rar, *.zip
*.mp(e)g, *.avi, *.mkv, *.wmv, *.asf
失败者: (这些才是我真正想要的)
*.exe, *.bat, *.dll, *.com, *.lnk
我也知道会有例外。就像安装程序 .exe 文件一样,用于在 Wine 中安装某些东西。就这个问题而言,这种担忧并不是一个问题。所有有问题的文件都是副本(副本,甚至可能是更多副本),因此我真正想要保留的安装程序位于良好、安全且可能受写保护的地方。
答案1
只有您知道您需要/想要保留什么。但是,您可以,在某种程度上,识别Windows系统文件和其他已安装的程序文件。
在虚拟机中重新安装 Windows 和这些程序,然后创建两个列表全部虚拟机中的文件名;
在VM中,制作新安装的系统的第一个列表
dir /S /B /A-D C:\ >vmlist.1
在VM中,制作更新后系统的第二个列表
dir /S /B /A-D C:\ >vmlist.2
回到 *nix,合并这两个文件并删除重复的行。
sort -u vmlist.1 vmlist.2 >vmlist
该列表现在看起来像这样(当然,但更长):
C:\name with 6 special chars [$.^|]
C:\Windows\System32\asr_fmt.exe
C:\Windows\System32\asr_ldm.exe
C:\Windows\System32\asr_pfu.exe
现在将列表转换为
regex
适合的模式grep
sed -r 's/\\/\//g; s/[]$.^|[]/\\&/g; s/^[[:alpha:]]:/^.*/; s/$/$/' vmlist >vmlist.rex
正则表达式列表将如下所示。
^.*/name with 6 special chars \[\$\.\^\|\]$
^.*/Windows/System32/asr_fmt\.exe$
^.*/Windows/System32/asr_ldm\.exe$
^.*/Windows/System32/asr_pfu\.exe$
列出目标归档目录中包含的文件
find '/my/archive/dir' -type f >arclist
现在做一个子列表来自与
arclisl
正则表达式模式匹配的文件。<arclist grep -f vmlist.rex >arcmatches
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/large
thumbs.db
答案4
C:/pagefile.sys
在 C:/ 的根目录中,pagefile.sys 应该是一个相当大的文件,您不再需要它了。
在大多数情况下,整个 Windows-Dir 没有用 - 除非使用模拟器、虚拟机。
字体可能是一个例外(至少 *.ttf/ *.TTF)。