怎样用window的脚本或者批处理实现 文档搜索及重命名?谢谢

怎样用window的脚本或者批处理实现 在某一文件夹搜索包含“资料”的word文档,然后把搜索出的文档名称中不包括“文档”都重命名,文件名加上“文档”二字。
比如
如果 "课本.doc"内容中查到了含有“资料”两个字 ,就自动把它命为"课本文档.txt
而“课本文档.doc”内容中查到了含有“资料”两个字 ,保持名称不变化

@echo off
set find_path=%~dp0
set /p find_path=输入完整路径,回车默认当前目录:
pushd .
cd /d %find_path%||(echo 路径非法&pause&goto :eof)
md tmp_txt 2>nul
>doctotxt.vbs echo on error resume next
>>doctotxt.vbs echo Dim word,doc,fso,fc,f
>>doctotxt.vbs echo Dim strBaseName,strExtName,id
>>doctotxt.vbs echo Set fso = CreateObject("Scripting.FileSystemObject")
>>doctotxt.vbs echo Set fc = fso.GetFolder(".").Files
>>doctotxt.vbs echo Set word = CreateObject("Word.Application")
>>doctotxt.vbs echo For Each f In fc
>>doctotxt.vbs echo strBaseName = fso.GetBaseName(f.Path)
>>doctotxt.vbs echo id=instr(strBaseName, "文档")
>>doctotxt.vbs echo strExtName = LCase( fso.GetExtensionName(f.Path) )
>>doctotxt.vbs echo If id=0 and (strExtName="doc" Or strExtName="docx") Then
>>doctotxt.vbs echo Set doc = word.Documents.Open(f.Path)
>>doctotxt.vbs echo doc.SaveAs fso.GetFolder(".") ^& "\tmp_txt\" ^& strBaseName ^& strExtName ^& ".txt",7
>>doctotxt.vbs echo doc.Close
>>doctotxt.vbs echo End If
>>doctotxt.vbs echo Next
>>doctotxt.vbs echo Set fso = Nothing
>>doctotxt.vbs echo Set fc = Nothing
>>doctotxt.vbs echo Set f = Nothing
>>doctotxt.vbs echo Set word = Nothing
>>doctotxt.vbs echo Set doc = Nothing
echo 开始转换并重命名,请等待...
cscript //nologo doctotxt.vbs
for /f "tokens=*" %%a in ('dir .\tmp_txt\*.txt /b /s') do (
for /f "tokens=*" %%i in ('type %%a^|findstr /c:"资料"') do (
setlocal enabledelayedexpansion
set renname=%%~na
set ext=!renname:~-1!
if /I "x"=="!ext!" (
echo 查到!renname:~0,-4!.docx符合条件...
ren !renname:~0,-4!.docx !renname:~0,-4!文档.docx
) else (
echo 查到!renname:~0,-3!.doc符合条件...
ren !renname:~0,-3!.doc !renname:~0,-3!文档.doc
)
endlocal
)
)
echo 处理完毕.
rd /s /q tmp_txt
del /f doctotxt.vbs
popd
pause
exit /b
温馨提示:内容为网友见解,仅供参考
无其他回答

怎样用window的脚本或者批处理实现 文档搜索及重命名?谢谢
ren !renname:~0,-4!.docx !renname:~0,-4!文档.docx ) else (echo 查到!renname:~0,-3!.doc符合条件...ren !renname:~0,-3!.doc !renname:~0,-3!文档.doc )endlocal ))echo 处理完毕.rd \/s \/q tmp_txt del \/f doctotxt.vbs popd pause exit \/b ...

如何使用rename(ren)在批处理文件中实现重命名
rename *.xls 123.xls 这样可以把各种名称的xls文件转化成123.xls文件 具体你要是还想改别的再补充问题。我这个命令是在window下运行的,如果在linux下还要用这个:mv命令 你吧你的邮箱给我吧,我发邮件给你,这里说不明白。我这里运行没有问题,名字被改过来了。

怎样用DOS命令或批处理实现发送一个文件的快捷方式至桌面上?
代码使用方法:只需复制代码后粘帖到新的空文本文件中,然后按照脚本中注释的要求去修改内容,并保存为后缀名为bat的文件,最后双击这个bat文件即可执行并创建快捷方式。以下为脚本代码:echo off::设置程序或文件的完整路径(必选)set Program=D:\\MyApp\\app.exe ::设置快捷方式名称(必选)set LnkNam...

如何写脚本文件
问题一:怎样用文本文档写命令脚本文件? 有例子最好 很简单,我给你一个很简单的例子,用记事本做一个批处理脚本文件:新建个记事本,打开,输入“shutdown -s -t 1”保存,然后你把这个文件的*.txt后缀改为*.bat后缀。你点击下,很奇伐的事会发生。 问题二:脚本是什么?怎么编写脚本? 脚本:写剧本的人,也叫故...

求一招好用的电脑技术
用ghost explorer打开空gho文件,并在ghost explorer的窗口里点右键粘贴或是直接把文件拖进窗口就行了。(ghost explorer的压缩速度比winrar还要快,而添加、删除等都可以方便实现,用起来就象资源管理器一样) 12、win2000\/XP在遇到系统严重问题无法启动时,可以利用故防恢复控制台,把c:windowsrepair文件夹中保存的初始化...

CMD常用命令大全
Vista中,和Server 2003 下的“MS-DOS方式”。中文版Windows XP中的命令提示符进一步提高了与DOS下操作命令的兼容性,用户可以在命令提示符直接输入中文调用文件。在9x系统下输入command就可以打开命令行,而在NT系统上可以输入CMD来打开,在windows2000后被CMD替代,利用CMD命令查询系统的信息或者 ...

使用bat批处理文件实现Window10系统定时关机和取消关机的方法
具体的设置方法如下:步骤一、先在电脑上新建两个txt文本,分别命名为“定时10分钟后关机”和“取消关机”,如下图,当然,文本的名字也可以自己随便定。步骤二、在第一步中新建的“定时10分钟后关机”的文档内输入“shutdown -s -t 600”,这个代码表示10分钟后关机,之后保存,并把文件后缀由.txt...

脚本是什么意思??
详情请查看视频回答

谁能告诉我一些关于使用电脑的小知识,越全面越好,拜托了!
打开“组策略控制台→用户配置→管理模板→系统”中的“阻止访问命令提示符”并启用此策略,并在下面列表框中选择是否“也停用命令提示符脚本处理”,这个设置还决定批处理文件 �.cmd和.bat 是否可以在计算机上运行。 如果启用这个设置,在用户试图打开命令窗口时,系统会显示一条消息,解释设置阻止这一操作。 4.禁止...

常见的Window的应用软件安装程序的文件名是什么?
windows应用软件安装程序的文件名为setup,install,installer,installation。安装程序是帮助用户安装其他软件或驱动程序的计算机软件。随着计算机硬件的飞速发展,软件变得庞大而复杂,再加上网络的普及,促进了计算机的普及。越来越多的用户在安装软件时遇到困难,因此越来越多的软件开发人员提供安装程序来帮助用户...

相似回答