当前位置: 首页 > news >正文

菜狗的脚步学习

文章目录

  • 一、pdf到h文件转换并恢复
  • 二、
  • 三、

一、pdf到h文件转换并恢复

编写一个bat,将当前文件的.pdf文件后缀改为.h文件,然后将当前文件下的.h文件全部打开,再依次关闭,待所有.h文件都关闭后,再将.h文件改为.pdf后缀

以下是一个能够完成你所要求操作的批处理文件。这个批处理文件会先把当前目录下的所有.pdf文件后缀改成.h,接着打开这些.h文件,随后依次关闭它们,等所有.h文件都关闭之后,再把.h文件改回.pdf后缀。

@echo off
setlocal enabledelayedexpansion:: 创建一个临时文件来存储原始文件名
set "tempFile=renamelist.tmp"
if exist "%tempFile%" del /f /q "%tempFile%":: 重命名.pdf为.h并记录原始文件名
echo 正在将.pdf文件重命名为.h文件...
for %%f in (*.pdf) do (echo %%f>>"%tempFile%"ren "%%f" "%%~nf.h"
):: 打开所有.h文件
echo 正在打开.h文件...
for %%h in (*.h) do (start "" "%%h"
)echo 请查看文件内容,按任意键继续关闭文件...
pause >nul:: 关闭所有.h文件
echo 正在关闭.h文件...
taskkill /f /im notepad.exe >nul 2>&1:: 等待一段时间确保文件已关闭
timeout /t 2 /nobreak >nul:: 重命名.h为.pdf
echo 正在将.h文件重命名回.pdf文件...
for /f "delims=" %%o in ('type "%tempFile%"') do (set "original=%%o"ren "!original:~0,-4!.h" "!original!"
):: 删除临时文件
if exist "%tempFile%" del /f /q "%tempFile%"echo 操作已完成!

注意:另存为为GB18030
![(https://i-blog.csdnimg.cn/direct/993ee3909fbe4b7abac25e50a27001b5.png)

代码功能解析

  1. 变量与临时文件设置

    • setlocal enabledelayedexpansion:启用延迟环境变量扩展,以在循环内部正确处理变量。
    • 创建临时文件renamelist.tmp,用于存储原始的.pdf文件名。
  2. 文件重命名与记录

    • 遍历当前目录下所有.pdf文件,将文件名写入临时文件。
    • 使用ren命令将.pdf文件重命名为.h文件,保留原文件名(不含扩展名)。
  3. 文件打开操作

    • 使用start命令打开所有.h文件,默认会用记事本或关联程序打开。
  4. 文件关闭操作

    • 脚本暂停并提示用户按任意键继续,以便用户有时间查看文件内容。
    • 使用taskkill命令强制关闭所有记事本进程(假设.h文件由记事本打开)。
  5. 恢复文件扩展名

    • 读取临时文件中的原始文件名,将对应的.h文件重命名回.pdf扩展名。
    • 删除临时文件,清理操作痕迹。

使用说明

  1. 将上述代码保存为.bat文件(例如pdf_rename.bat),并放在包含.pdf文件的目录中。
  2. 双击运行该批处理文件,它会自动完成所有操作。
  3. 在文件打开后,你可以查看内容,按任意键后文件将被关闭并恢复原名。

注意事项

  • 该脚本假设.h文件由记事本打开,若使用其他程序打开,需修改taskkill命令中的进程名。
  • 确保临时文件名renamelist.tmp不会与现有文件冲突。
  • 操作过程中请不要手动删除临时文件,否则可能导致部分文件无法恢复原名。

二、

三、

相关文章:

  • [SAP] 通过程序名获取事务码TCode
  • Scala和Go差异
  • c++STL-通用(反向)迭代器适配器
  • 算法第十七天|654. 最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树
  • 第十六章 常用存储器介绍
  • 手机相册的 “智能分类” 功能
  • 数学复习笔记 7
  • Playwright 安装配置文件详解
  • Spark缓存-cache
  • 数据擦除标准:1-Pass vs. 3-Pass vs. 7-Pass有什么区别,哪个更好?
  • 【MySQL】第三弹——表的CRUD进阶(一)数据库约束
  • 专栏特辑丨悬镜浅谈开源风险治理之SBOM与SCA
  • 鸿蒙Next开发 获取APP缓存大小和清除缓存
  • Open Source Geospatial Content Management System -GeoNode
  • 《100天精通Python——基础篇 2025 第18天:正则表达式入门实战,解锁字符串处理的魔法力量》
  • Leetcode 3547. Maximum Sum of Edge Values in a Graph
  • Excelize 开源基础库发布 2.9.1 版本更新
  • win部署Jenkins 自动化部署发布后端项目
  • 6. 多列布局/用户界面 - 杂志风格文章布局
  • RabbitMQ 核心概念与消息模型深度解析(一)
  • 《克莱默夫妇》导演罗伯特·本顿去世,终年92岁
  • 宝通科技:与宇树合作已签约,四足机器人在工业场景落地是重点商业化项目
  • 俄官员说将适时宣布与乌克兰谈判代表
  • 法治课|争议中的“行人安全距离”于法无据,考量“注意义务”才更合理
  • 中央结算公司:减免境外央行类机构账户开户费用
  • 沙县小吃中东首店在沙特首都利雅得开业,首天营业额超5万元