为文件一键命名为其md5值
为文件一键命名为其md5值
不知道怎么给文件命名?一键命名为其md5不就是了!
单文件拖拽版
无需启动,直接将文件拖拽到.bat
文件上
@echo off
setlocal enabledelayedexpansion
:: 获取文件完整路径
set "file_path=%~1"
:: 检查文件是否存在
if not exist "!file_path!" (
echo File not found: !file_path!
exit /b 1
)
:: 使用CertUtil计算MD5
for /f "delims=" %%a in ('certutil -hashfile "!file_path!" MD5 ^| find /v ":" ^| find /v "CertUtil"') do (
set "file_md5=%%a"
)
:: 替换MD5字符串中的空格
set "file_md5=!file_md5: =!"
:: 获取文件目录、文件名和扩展名
for %%i in ("!file_path!") do (
set "file_dir=%%~dpi"
set "file_name=%%~ni"
set "file_ext=%%~xi"
)
:: 重命名文件
set "new_file_path=!file_dir!!file_md5!!file_ext!"
echo Renaming "!file_path!" to "!new_file_path!"
rename "!file_path!" "!file_md5!!file_ext!"
:: 结束
endlocal
多文件拖拽版
可能一次需要处理多个文件吧。那么将它们全选中,一并拖拽即可
@echo off
setlocal enabledelayedexpansion
:: 遍历所有提供的文件路径
:next
if "%~1"=="" goto end
set "file_path=%~1"
:: 检查文件是否存在
if not exist "!file_path!" (
echo File not found: !file_path!
goto shiftArgs
)
:: 使用CertUtil计算MD5
for /f "delims=" %%a in ('certutil -hashfile "!file_path!" MD5 ^| find /v ":" ^| find /v "CertUtil"') do (
set "file_md5=%%a"
)
:: 替换MD5字符串中的空格
set "file_md5=!file_md5: =!"
:: 获取文件目录、文件名和扩展名
for %%i in ("!file_path!") do (
set "file_dir=%%~dpi"
set "file_name=%%~ni"
set "file_ext=%%~xi"
)
:: 重命名文件
set "new_file_path=!file_dir!!file_md5!!file_ext!"
echo Renaming "!file_path!" to "!new_file_path!"
rename "!file_path!" "!file_md5!!file_ext!"
:: 移动到下一个参数
:shiftArgs
shift
goto next
:: 结束
:end
endlocal
Attention
请注意,在实际使用之前在安全的环境中测试此脚本,以确保它满足你的要求并且没有意外的行为。
为文件一键命名为其md5值的更多相关文章
- MD5算法【计算文件和字符串的MD5值】
1. MD5算法是一种散列(hash)算法(摘要算法,指纹算法),不是一种加密算法(易错).任何长度的任意内容都可以用MD5计算出散列值.MD5的前身:MD2.MD3.MD4.介绍工具:CalcMD5 ...
- linux下md5sum用法 (查看文件或字符串的md5值)
MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长 ...
- JAVA 文件读取写入后 md5值不变的方法
假如我们想把某文件读入 StringBuffer 并写入新文件,新文件md5值需要保持不变(写入新文件后保证和源文件一模一样), 我们就需要在操作 StringBuffer 时附加换行符: Strin ...
- 通过python的hashlib模块计算一个文件的MD5值
Python的hashlib提供了很多摘要算法,如MD5,SHA1等常用算法. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(如MD5值 ...
- MD5工具类,提供字符串MD5加密、文件MD5值获取(校验)功能
MD5工具类,提供字符串MD5加密(校验).文件MD5值获取(校验)功能 : package com.yzu.utils; import java.io.File; import java.io.Fi ...
- python计算文件的md5值
前言 最近要开发一个基于python的合并文件夹/目录的程序,本来的想法是基于修改时间的比较,即判断文件有没有改变,比较两个文件的修改时间即可.这个想法在windows的pc端下测试没有问题. 但是当 ...
- java获取文件的md5值
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- asp.net和js读取文件的MD5值的方法
前言 文件的md5值,即文件签名,为了验证文件的正确性,是否被恶意篡改等.每个文件有一个唯一的md5值. 最近公司开发的app文件包的校验就有用到文件md5值. 一.asp.net获取 ①和上传文件一 ...
- C#计算文件的MD5值实例
C#计算文件的MD5值实例 MD5 是 Message Digest Algorithm 5(信息摘要算法)的缩写,MD5 一种散列(Hash)技术,广泛用于加密.解密.数据签名和数据完整性校验等方面 ...
- python检测文件的MD5值
python检测文件的MD5值MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2.MD3和MD4发展而来.MD5算法的使用不需要支付任何版权 ...
随机推荐
- 【ABAQUS模态动力学】Composite&abaqus 预应力模态分析&输出单元刚度矩阵
参考 连接器振动脱落_abaqus重启动分析_显式隐式切换_插拔力预应力模态_TeeSim天深科技 Abaqus预应力模态分析 附Abaqus 分析用户手册材料卷下载- 技术邻 Natural fre ...
- Windows编程----结束进程
进程有启动就有终止,通过CreateProcess函数可以启动一个新的子进程,但是如何终结子进程呢?主要有四种方法: 通过主线程的入口函数(main函数.WinMain函数)的return关键字终止进 ...
- go gin Next()方法
示例 gin Next()使用方法 package main import ( "fmt" "github.com/gin-gonic/gin" "n ...
- Django实战项目-学习任务系统-用户管理
接着上期代码框架,开发第6个功能,用户管理,查看用户信息和学生用户属性值,尤其是总积分值,还可以查看积分流水明细,完成任务奖励积分,兑换物品消耗积分. 第一步:编写第6个功能-用户管理 1,编辑模型文 ...
- IvorySQL 增量备份与合并增量备份功能解析
1. 概述 IvorySQL v4 引入了块级增量备份和增量备份合并功能,旨在优化数据库备份与恢复流程.通过 pg_basebackup 工具支持增量备份,显著降低了存储需求和备份时间.同时,pg_c ...
- Arrays.asList() 详解
[1. 要点] 该方法是将数组转化成List集合的方法. List list = Arrays.asList("a","b","c"); 注 ...
- BigDecimal类--java进阶day05
1.BigDecimal出现的原因 2.BigDecimal的创建 不推荐第一种形式,会有误差 第二种方式创建对象 第三种方式调用方法 2.BigDecimal常用方法 除法的特殊事项 如果有除不尽的 ...
- 【Maven】POM基本概念
目前的技术在开发中存在的问题: 一个项目就是一个工程 如果项目非常庞大,就不适合继续使用 package 来划分模块.最好是每一个模块对应一个工程,利于分工协作. 借助于 Maven 就可以将一个项目 ...
- macOS 字体文件所在路径
目录 用户字体路径/Library/Fonts 系统字体路径/System/Library/Fonts macOS font 也就是字体文件,有2个可用路径 这里以 macOS Monterey 版本 ...
- Cookie,Session与Token
参考资料 水平有限,欢迎交流!仅做学习交流使用 一定要看,非常透彻![Cookie.Session.Token究竟区别在哪?如何进行身份认证,保持用户登录状态?] 黑马jwt详解 Javaweb程序设 ...