写一个批处理,压缩一个文件夹下的所有图片大小

简介: 【10月更文挑战第14天】在Windows环境下,使用批处理脚本可以方便地批量压缩图片。以下是一个示例脚本,用于压缩指定目录下的所有.jpg和.png文件,并将压缩后的图片保存到另一个目录中。

在不同的操作系统和环境中,处理图片压缩的方式会有所不同。考虑到使用Windows环境,并且希望使用批处理脚本来实现这一需求,下面是一个基本的批处理脚本示例

@echo off
setlocal enabledelayedexpansion

REM 设置图片目录和输出目录
set "inputDir=D:\images\w"
set "outputDir=D:\images\w-compress"

REM 创建输出目录如果不存在
if not exist "%outputDir%" mkdir "%outputDir%"

REM 遍历输入目录中的所有.jpg和.png文件
for %%i in ("%inputDir%\*.jpg") do (
    echo Compressing %%~ni...
    ffmpeg -i "%%i" -q 80 "%outputDir%\%%~ni_compressed.jpg"
)

for %%i in ("%inputDir%\*.png") do (
    echo Compressing %%~ni...
    ffmpeg -i "%%i" -q 80 "%outputDir%\%%~ni_compressed.png"
)

echo All images compressed.
pause

将上述脚本保存为.bat文件,例如compress_images.bat。
修改inputDir和outputDir变量以匹配你的实际路径。
双击运行.bat文件或在命令行中执行它。
这将遍历指定目录下所有的.jpg和.png文件,压缩它们,并将结果保存在输出目录中。

相关文章
|
编解码 计算机视觉
使用ffmpeg将图片合成为视频(附完整参数介绍)
ffmpeg -f image2 -i %d.jpeg -vf scale=-1:480 output5.mp4 #-1表示比例缩放,也可-vf scale=640:-1固定宽度缩放高度
2302 0
|
数据采集 JavaScript 测试技术
史上最全测试开发工具推荐(含自动化、APP性能、稳定性、抓包神器)
在本篇文章中,将给大家推荐14款日常工作中经常用到的测试开发工具神器,涵盖了自动化测试、APP性能测试、稳定性测试、抓包工具等。
5940 0
史上最全测试开发工具推荐(含自动化、APP性能、稳定性、抓包神器)
|
前端开发 JavaScript API
基于Vue+ELement实现增删改查案例与表单验证
基于Vue+ELement实现增删改查案例与表单验证
1517 0
|
编解码 前端开发 JavaScript
前端:Rem 及其转换原理
Rem是一种用于前端开发的相对字体大小单位,它基于根元素的字体尺寸来定义文本大小,有助于实现响应式布局和可维护性。Rem的转换原理是通过相对于HTML根元素的字体大小来设置子元素的字体大小,从而实现统一的比例调整,提高页面的适应性和灵活性。此方法简化了跨浏览器和设备的布局调整,增强了用户体验。
|
JavaScript 前端开发 安全
JavaScript基础-定时器:setTimeout, setInterval
【6月更文挑战第13天】JavaScript中的`setTimeout`和`setInterval`是异步编程的关键工具,用于按计划执行代码。`setTimeout`在延迟后执行一次,而`setInterval`则周期性执行。常见问题包括忘记清除定时器导致内存泄漏,递归使用`setTimeout`可能引发无限递归,以及字符串代码执行的安全隐患。解决方法包括使用`clearTimeout`和`clearInterval`,设置递归终止条件,以及优先使用函数表达式。理解定时器的非精确性并采用错误处理策略也是实践中的重要技巧。通过示例展示了如何延迟显示消息和周期性打印计数。
519 2
|
人工智能 算法 API
重磅:谷歌AI Gemini 2.0 Pro/Flash已来,国内用户怎么使用?
当人工智能的浪潮席卷全球,谷歌再次站在了时代的潮头。Gemini 2.0,这个名字如今已成为 AI 领域最耀眼的明星。它不仅仅是一个模型的升级,更代表着一场技术革命的开端。2024 年末,Gemini 2.0 Flash 以其疾风骤雨般的速度震撼登场,紧接着,2025 年初,Gemini 2.0 Pro 系列的发布,则将这场革命推向了高潮。谷歌正式宣告,我们已步入 Gemini 2.0 时代!
1456 15
|
持续交付 Python
如何在Python中自动解决模块和包的依赖冲突?
完全自动解决所有依赖冲突可能并不总是可行,特别是在复杂的项目中。有时候仍然需要人工干预和判断。自动解决的方法主要是提供辅助和便捷,但不能完全替代人工的分析和决策😉。
|
缓存 JavaScript 前端开发
成功解决:npm 版本不支持node.js。【 npm v9.1.2 does not support Node.js v16.6.0.】
这篇文章介绍了如何解决npm版本与Node.js版本不兼容的问题,提供了查看当前npm和Node.js版本的步骤,以及如何根据Node.js版本选择合适的npm版本并进行升级的详细指导。
成功解决:npm 版本不支持node.js。【 npm v9.1.2 does not support Node.js v16.6.0.】
|
机器学习/深度学习 前端开发 JavaScript
WebAssembly:让前端性能突破极限的秘密武器
WebAssembly(简称 WASM)作为前端开发的性能加速器,能够让代码像 C++ 一样在浏览器中高速运行,突破了 JavaScript 的性能瓶颈。本文详细介绍了 WebAssembly 的概念、工作原理以及其在前端性能提升中的关键作用。通过与 JavaScript 的配合,WASM 让复杂运算如图像处理、3D 渲染、机器学习等在浏览器中流畅运行。文章还探讨了如何逐步集成 WASM,展示其在网页游戏、高计算任务中的实际应用。WebAssembly 为前端开发者提供了新的可能性,是提升网页性能、优化用户体验的关键工具。
7755 2
WebAssembly:让前端性能突破极限的秘密武器