Board logo

标题: [文本处理] 【已解决】批处理在文件首尾都插入一行 [打印本页]

作者: yyz219    时间: 2022-1-6 23:14     标题: 【已解决】批处理在文件首尾都插入一行

  1. 完美解决了
  2. @echo  off
  3. ::【增加头尾 (保存为原名)】
  4. for /r . %%i in (*.cmd) do (
  5. type "%%i">%temp%\a.cmd
  6. (
  7.   echo @echo off
  8.   type %temp%\a.cmd
  9.   echo exit
  10. )>"%%i"
  11. )
  12. exit
  13. +++++++++++++++++++++++++++++++++++++++++++++++++
  14. 下面简洁:
  15. ::【加头尾 (重命名为:注册表名.bat) (其中:%~n1————注册表名{无后缀})】
  16. move "*.cmd" "a.cmd"
  17. (
  18.   echo @echo off
  19.   type a.cmd
  20.   echo exit
  21.            )>"%~n1.bat"
  22. del *.cmd
复制代码

作者: flashercs    时间: 2022-1-6 23:43

  1. (
  2. echo @echo off
  3. type 试一试.reg.txt
  4. echo exit
  5. )>试一试..txt
复制代码

作者: yyz219    时间: 2022-1-7 00:10

flashercs 发表于 2022-1-6 23:43


我试一试先 谢谢
作者: yyz219    时间: 2022-1-7 00:14

flashercs 发表于 2022-1-6 23:43



    成功,非常感谢
作者: yyz219    时间: 2022-1-7 00:33

回复 3# yyz219

现在发现一个问题:

试一试.reg.txt——————————试一试---是变化的,  后面的 .reg是固定的

怎样解决,文件名字的修改?

谢谢
作者: ukeedy    时间: 2022-1-7 10:19

  1. @echo off
  2. for /r . %%i in (*.txt) do (
  3. type "%%i">%temp%\a.txt
  4. (
  5.   echo @echo
  6.   type %temp%\a.txt
  7.   echo.
  8.   echo exit
  9. )>"%%i"
  10. )
复制代码
回复 1# yyz219
作者: yyz219    时间: 2022-1-7 11:49

本帖最后由 yyz219 于 2022-1-7 11:52 编辑
回复  yyz219
ukeedy 发表于 2022-1-7 10:19


成功支持所有文件名    谢谢

还有一个问题是:

能不能去除文件名中的:.reg

即:文件名由原来:“试一试.reg.txt”————修改为 “试一试..txt”  【“试一试”是变化的,“.reg”是固定的】
作者: ukeedy    时间: 2022-1-7 23:02

回复 7# yyz219
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /r . %%i in (*.txt) do (
  4. type "%%i">%temp%\a.txt
  5. (
  6.   echo @echo
  7.   type %temp%\a.txt
  8.   echo.
  9.   echo exit
  10. )>"%%i"
  11. set a=%%~nxi
  12. set a=!a:reg=!
  13. ren "%%i" "!a!"
  14. )
复制代码
set a=%%~nxi  只获得文件跟文件类型后缀,如c:\aa.reg.txt,只获得aa.reg.txt部分
set a=!a:reg=! 替换文件名中reg为空
ren "%%i" "!a!"  重命名




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2