找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25365|回复: 7

[文本处理] [已解决]批处理如何给多个文本每隔一行插入一行特定数据内容?

[复制链接]
发表于 2021-6-13 11:38:18 | 显示全部楼层 |阅读模式
请教高手:
如何实现将多个txt文本每隔一行插入一行特定数据内容:

如:
多个TXT文件,文件内容格式如下:
aaaa
bbbbbbbb
cccccc
dddddddd
eeeeeeeeee
ffffffff
....N行
88888



在文件中每行后插入:sleep 60,但内容最后一行不需要插入。
插入后变成这样:

aaaa
sleep 60
bbbbbbbb
sleep 60
cccccc
sleep 60
dddddddd
sleep 60
eeeeeeeeee
sleep 60
ffffffff
sleep 60
....N行
sleep 60
88888

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2021-6-13 12:07:53 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f %%i in (1.txt) do set /a a+=1
  4. for /f "delims=" %%i in (1.txt) do (
  5.     echo %%i>>2.txt
  6.     set /a b+=1
  7.     if !b! equ !a! goto end
  8.     echo sleep 60>>2.txt
  9. )
  10. :end
  11. pause
复制代码
 楼主| 发表于 2021-6-13 12:17:14 | 显示全部楼层
本帖最后由 滴血雄鹰 于 2021-6-13 12:30 编辑
不知道是谁 发表于 2021-6-13 12:07



    单个文件是可以,但我需要是对多个文件批量进行插入指定内容操作。
发表于 2021-6-13 16:57:25 | 显示全部楼层
再加一层查找文件的for循环,不就行了。
发表于 2021-6-13 18:39:04 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b *.txt') do (
  4.         set/p f=<"%%a"
  5.         (echo;!f!
  6.                 for /f "usebackq skip=1 delims=" %%b in ("%%a") do (echo;sleep 60
  7.         echo;%%b))>new_%%a
  8. )
  9. pause
  10. exit
复制代码

评分

参与人数 1技术 +1 收起 理由
滴血雄鹰 + 1 有效!

查看全部评分

发表于 2021-6-13 19:01:49 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2021-6-13 21:12 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for %%a in (*.txt) do (
  4.     set n=0
  5.     (for /f "delims=" %%i in ('type "%%a"') do (
  6.         set /a n+=1
  7.         if !n! neq 1 echo,sleep 60
  8.         echo,%%i
  9.     ))>"#%%a"
  10. )
  11. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
滴血雄鹰 + 1 代码有效!

查看全部评分

发表于 2021-6-13 19:07:46 | 显示全部楼层
本帖最后由 newswan 于 2021-6-13 23:11 编辑

powershell 简单

  1. foreach ($f in get-childitem *.txt -name)
  2. {
  3.     $fc = get-content 1.txt
  4.     $fc = $fc -replace "$","`n---"
  5.     $fc[$fc.count-1] = $fc[$fc.count-1] -replace "`n---",""
  6.     $fc
  7. }

复制代码
 楼主| 发表于 2021-6-13 20:45:51 | 显示全部楼层
回复 6# qixiaobin0715

如果超过一个文件,每一行会多一个sleep 60。
发表于 2021-6-13 21:13:25 | 显示全部楼层
回复 8# 滴血雄鹰
已修改,可以再试试
 楼主| 发表于 2021-6-14 17:57:49 | 显示全部楼层
回复 9# qixiaobin0715

好了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 17:25 , Processed in 0.035169 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表