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

[文本处理] 求bat,用gawk在文本里第2个 .bat后面增加:123,谢谢

求bat,用gawk在文本里第2个 .bat后面增加:123,谢谢
我是小白,希望老师多多帮助

回复  yyz219

可用 sed -i 直接把:123添加在文件的第2个.bat字符串后(是整个文件中的第2个,不是每行的 ...
hfxiang 发表于 2023-10-10 09:06



    谢谢
我是小白,希望老师多多帮助

TOP

回复 1# yyz219

可用 sed -i 直接把:123添加在文件的第2个.bat字符串后(是整个文件中的第2个,不是每行的第2个),结果写回1.txt
  1. sed -i -z -r "s/(.bat)/\1:123/2" 1.txt
复制代码
2

评分人数

    • 77七: 理解到位!我理解错了技术 + 1
    • yyz219: 乐于助人技术 + 1

TOP

77七 发表于 2023-10-9 20:39



    谢谢
我是小白,希望老师多多帮助

TOP

  1. @echo off
  2. set n=-1
  3. (for /f "useback tokens=1* delims=[]" %%a in (`find /n /v "" ^<"1.txt"`) do (
  4. set "str=%%b"
  5. setlocal enabledelayedexpansion
  6. if "!str!" neq "" (
  7. if "!str!" neq "!str:*.bat=!" (
  8. if "!str:*.bat=!" neq "" (
  9. set "str2=!str:*.bat=!"
  10. if "!str2!" neq "!str2:.bat=!" (
  11. call :1
  12. )
  13. )
  14. )
  15. )
  16. if !n! equ -1 (
  17. echo=!str!
  18. )
  19. endlocal
  20. ))>2.txt
  21. pause & exit
  22. :1
  23. set /a k=(n+=1)+4
  24. if "!str:~%n%,4!" equ ".bat" (
  25. if defined m (
  26. echo !str:~0,%k%!123!str:~%k%!
  27. exit /b
  28. ) else (
  29. set /a n+=3,m=1
  30. )
  31. )
  32. goto :1
复制代码
1

评分人数

bat小白,请多指教!谢谢!

TOP

是这样子不?
echo :123 >>第二个bat名字.bat
Five66 发表于 2023-10-9 00:30



    好像不行
我是小白,希望老师多多帮助

TOP

是这样子不?
echo :123 >>第二个bat名字.bat

TOP

回复 1# yyz219


    请给一个真实的例子说明一下你的需求吧,比如操作之前是怎样的,操作之后变成啥样?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表