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

[已解决]dos如何在同级及子集所有txt文件的第一行后插入一行内容?

本帖最后由 O.0 于 2019-5-18 19:44 编辑

例:
源文件:
111
222
333
修改后:
111
444
222
333

  1. @echo off
  2. set info=互助互利,支付宝扫码头像,感谢赞助
  3. rem 有问题,可加QQ956535081及时沟通
  4. title %info%
  5. cd /d "%~dp0"
  6. powershell -NoProfile -ExecutionPolicy bypass ^
  7.     $n=1;^
  8.     $str='444';^
  9.     dir -r^|?{($_ -is [System.IO.FileInfo]) -and ($_.Extension -eq '.txt')}^|%%{^
  10.         write-host $_.FullName;^
  11.         $text=[IO.File]::ReadAllLines($_.FullName,[Text.Encoding]::Default);^
  12.         if($text.Count -ge $n){^
  13.             $text[$n-1]+=(\"`r`n\"+$str);^
  14.             [IO.File]::WriteAllLines($_.FullName, $text, [Text.Encoding]::Default);^
  15.         };^
  16.     };^
  17.     write-host '%info%' -ForegroundColor green;
  18. pause
复制代码
1

评分人数

    • O.0: 谢谢技术 + 1
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

本帖最后由 amwfjhh 于 2019-5-18 15:24 编辑
  1. @echo off
  2. set /p "strInsert=Please input the insert content:"
  3. for /f "tokens=*" %%i in ('dir /s/b/a-d *.txt') do (
  4. call :_Insert %%~si
  5. )
  6. pause
  7. goto :EOF
  8. :_Insert
  9. (
  10. set /p=<nul>$.tmp
  11. echo,Current file : %1
  12. for /f "tokens=1,* delims=:" %%a in ('findstr /n .* %1') do (
  13. echo,%%b>>$.tmp
  14. if "%%a" equ "1" (
  15. echo,%strInsert%>>$.tmp
  16. )
  17. )
  18. type $.tmp
  19. move /y $.tmp %1
  20. echo,&echo,
  21. goto :EOF
  22. )
复制代码
echo,hP1X500P[PZBBBfh#b##fXf-V@`$fPf]f3/f1/5++u5x>in.com

TOP

感谢两位大佬,已解决。

TOP

不好意思,新人帖子发错版块了。

TOP

回复 5# O.0


    无妨。小问题。
echo,hP1X500P[PZBBBfh#b##fXf-V@`$fPf]f3/f1/5++u5x>in.com

TOP

嗯,要用心,注意提示
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表