我有一个包含322000张图像的文件夹。当我与任何文件管理器一起进入该文件夹时,它会卡在加载中。
我如何去那里查看或删除图像?
我有一个包含322000张图像的文件夹。当我与任何文件管理器一起进入该文件夹时,它会卡在加载中。
我如何去那里查看或删除图像?
Answers:
最简单,最有效的恕我直言的方法是让脚本将文件重新组织到文件夹中,必要时甚至在目录级别的不同层上也是如此。这将使您的文件可浏览而不会窒息。
下面的脚本将为您完成此任务。它将创建带有任意数量文件的文件夹。如果这些文件夹超过(相同)任意数量,则将这些文件夹组织为子文件夹。每个(子)级别将具有相同的最大文件/子目录数量,从而使浏览变得容易。
每个创建的文件夹都显示文件夹号+创建的子级别数(例如22_1仅包含文件):
我在300.000个文件的目录中进行了测试,将其重组为(最大)100个文件的块,组织为(最大)100个文件夹的高级目录,等等
。在我的系统上花了不到一分钟的时间。将100.000个文件分成小块进行测试仅需几秒钟。
#!/usr/bin/env python3
import subprocess
import os
import shutil
#--- set the directory to reorganize below
dr = "/path/to/directory"
#--- set the number of files/folders per level
size = 100
level = 0
def move(fn, drn, level):
folder = dr+"/"+str(drn)+"_"+str(level)
if not os.path.exists(folder):
os.mkdir(folder)
shutil.move(dr+"/"+f, folder+"/"+f)
while len(os.listdir(dr)) > size:
level += 1
fn = 0; drn = 1
for f in os.listdir(dr):
if fn < size:
move(fn, drn, level)
else:
fn = 0
drn += 1
move(fn, drn, level)
fn += 1
reorganize.py
通过以下命令运行它:
python3 /path/to/reorganize.py
脚本(按原样)仅创建一个目录结构,其中每个级别都有定义数量的文件/文件夹。它不考虑名称,日期或其他任何类型的组织。
根据注释中的要求,是一个脚本,用于在处理完文件后将文件移回一个平面目录。
用法几乎相同。作为目录,设置与第一个脚本相同的目录,但这似乎很明显。
#!/usr/bin/env python3
import shutil
import os
#--- set the directory, the same as the first script
dr = "/path/to/directory"
#---
# move the files back
for root, dirs, files in os.walk(dr):
for file in files:
shutil.move(root+"/"+file, dr+"/"+file)
# remove the (now empty) subdirectories
for d in os.listdir(dr):
folder = dr+"/"+d
if os.path.isdir(folder):
shutil.rmtree(folder)
如注释中所述,脚本假定没有名称冲突的风险,因为所有文件最初都来自同一(平坦)目录。
nautilus
当使用包含大量文件的目录时,这是文件管理器中的问题,此bug中对此进行了描述。
在这种情况下,我建议您使用一些快速的文件管理器。您可以使用gnome-commander
它的速度是nautilus的5到6倍,并且在处理大量文件时,该比率会更大。它不是那么漂亮的GUI,但它应该可以帮助您解决问题。
要安装它:
sudo apt-get install gnome-commander
现在打开包含大量文件的目录:
gnome-commander /path-to-dir
我尝试了Thunar文件管理器,其图像数量大约为10,000。在本地驱动器上相当快地显示缩略图,并且打开网络驱动器也相当快,但速度要慢得多。不过,我还没有尝试使用更多的文件。但是至少,在不损害图形界面的情况下,它比Nautilus更好。
sudo apt-get install thunar
还有一个脚本使其成为您的默认文件管理器(如果您喜欢)。您可以在此处找到脚本:
您可以通过终端进入该文件夹,do gnome-open image.jpg
或xdg-open image.jpg
,该文件夹应打开一个gnome-image-viewer
或多个带有eye of gnome
(eog)的图像。接下来,如果您点击F9或转到查看->图片库,则可以预览缩略图。