首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建一个批处理文件,用用户输入重命名和移动文件。

创建一个批处理文件,用用户输入重命名和移动文件。
EN

Stack Overflow用户
提问于 2011-08-01 02:52:38
回答 1查看 2.8K关注 0票数 0

我对DOS命令的了解非常有限(主要是简单的迁移/复制/del/rename命令),我希望在创建一个完成以下步骤的批处理文件方面提供一些帮助:

  1. 鼓励用户在输入框中输入版本号.

  1. 验证用户的输入,以确保输入为主版本、连字符、次要版本(例如5-10)

  1. 搜索正在运行批处理文件的当前文件夹,并通过在该文件中附加版本号和硬编码描述来重命名所有PDF。

例如,EMDM.pdf的原始文件应该重命名为EMDM5-10_Software Manual.pdf (注意版本号前后的下划线,以及描述文本中的空格)

\webserver\downloads\supserseded

  • 转到\webserver\

  • 并“移动”该位置的PDF文件,该文件以"EMDM“开头,以”软件操作Manual.pdf“结尾,以”

  • “结尾。

将上一个版本的PDF移动(备份)后,将与\webserver\downloads文件位于同一个文件夹中的新重命名的PDF“复制”到

  1. 一旦成功移动,删除与bacth文件相同的文件夹中的PDF文件。

谢谢你的进阶。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-03 03:52:19

代码语言:javascript
复制
@echo off
:getversion
REM 1.
set /p VersionNumber=Enter the Version Number: 
REM 2.
for /f "tokens=1-3 delims=-" %%a in ("%VersionNumber%") do set Major=%%a& set Minor=%%b
REM 2.1 Revision of Version Number format
if not "%Major%-%Minor%" == "%VersionNumber%" goto getversion
REM 2.2 Revision of Major and Minor be numbers
set /a NMajor=Major, NMinor=Minor > NUL
if not "%NMajor%" == "%Major%" goto getversion
if not "%NMinor%" == "%Minor%" goto getversion
REM 3.
for %%a in (*.PDF) do ren "%%a" "%%~Na_%VersionNumber%_Software Operations Manual.pdf"
REM 4.
pushd \webserver\downloads
move "EMDM*Software Operations Manual.pdf" supserseded
REM 5.
popd
copy "EMDM*Software Operations Manual.pdf" \webserver\downloads
REM 6.
del "EMDM*Software Operations Manual.pdf"
REM Steps 5 and 6 above is the same as just one MOVE

我用更简单的方法修改了版本号。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6893840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档