[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
回复 14# tonyabbs
VBS的不会用。

TOP

回复 16# tonyabbs

纳尼!要灵活点呀,要会触类旁通、举一反三呀,批处理都会拖放执行,vbs就不会了?

TOP

回复 15# pcl_test
  1. echo;%*&pause
  2. set "thefile=%*"
  3. echo thefile=%thefile%
  4. for /f "tokens=*" %%I in ("%thefile%") do (
  5. echo %%~nxI)
复制代码
单独这样用BAT时,是可行的,但是把这段代码放到整个批处理中,就不行了。
  1. @echo on&setlocal enabledelayedexpansion
  2. set/a g=%time:~0,2%,h=g+100
  3. set "file_suffix=_TonyQ_%h:~-2%%time:~3,2%"
  4. echo file_suffix = %file_suffix%
  5. pause
  6. :ADDREM
  7. echo;%*&pause
  8. set "thefile=%*"
  9. echo thefile=%thefile%
  10. for /f "tokens=*" %%I in ("%thefile%") do (
  11. echo %%~nxI
  12. if %%I=="" goto END
  13. pause
  14. set "file_name=%%~nxI"&set "file_prename=%%~nI"&set "file_extname=%%~xI"
  15. echo file_name= !file_name!&echo  file_prename=!file_prename!&echo file_extname=!file_extname!
  16. set "file_name0=!file_name: =_!"&echo !file_name!中的空格已经改为_ ,文件 全 名 改为!file_name0!  
  17. set "file_prename=!file_prename: =_!"&echo !file_prename!中的空格已经改为_ ,文件名 改为!file_prename!
  18. set "file_name1=!file_name0:%(=(!"&echo !file_name0!中的括号已经改为( ,文件 全 名 改为!file_name1!
  19. set "file_prename1=!file_prename:%(=(!"&echo 括号已经改为( ,文件名 改为!file_prename1!
  20. set "file_name2=!file_name1:%)=)!"&echo !file_name1!中的括号已经改为) ,文件 全 名 改为!file_name2!
  21. set "file_prename2=!file_prename1:%)=)!"&echo 括号已经改为) ,文件名 改为!file_prename2!
  22. set "file_name3=!file_name2:%+=:!"&echo !file_name2!中的加号已经改为: ,文件 全 名 改为!file_name3!
  23. set "file_prename3=!file_prename2:%+=:!"&echo 加号已经改为: ,文件名 改为!file_prename3!
  24. pause
  25. ren "!file_name!" "!file_name3!"
  26. pause
  27. for  %%a in ("!file_name3!") do (
  28. set "file_pre=4R%date:~2,2%%date:~5,2%%date:~8,2%_"&echo file_pre= !file_pre!
  29. set "file_new=!file_pre!!file_prename3!!file_suffix!!file_extname!"&echo file_new= !file_new!
  30. )
  31. pause
  32. ren  "!file_name3!" "!file_new!"
  33. echo %thefile%  已经阅读完毕并更名为  !file_new!
  34. )
  35. shift
  36. goto ADDREM
  37. :END
  38. echo OK
  39. pause
复制代码
这个需要改名的TXT文件为

TOP

本帖最后由 tonyabbs 于 2016-11-6 11:20 编辑

回复 17# pcl_test

显示 缺少对象wsh。
找到原因了,是需要把VBS的缺省打开方式用wscript打开。

TOP

返回列表