Board logo

标题: [文本处理] 批处理怎样把一行文本截取其中的文字变列? [打印本页]

作者: hengcp    时间: 2017-5-22 17:27     标题: 批处理怎样把一行文本截取其中的文字变列?

有文本文件1.txt内容如下:
123456︱133456︱134456︱截止2017年05月22日 17:09  您部门有1台设备未升级,未升级设备清单请查看邮件。
223456︱233456︱234456︱截止2017年05月22日 17:09 您部门有2台设备未升级,未升级设备清单请查看邮件。



请问使用批处理如何变成以下格式,并导出为2.txt

123456︱截止2017年05月22日 17:09  您部门有1台设备未升级,未升级设备清单请查看邮件。
133456︱截止2017年05月22日 17:09  您部门有1台设备未升级,未升级设备清单请查看邮件。
134456︱截止2017年05月22日 17:09  您部门有1台设备未升级,未升级设备清单请查看邮件。
223456︱截止2017年05月22日 17:09 您部门有2台设备未升级,未升级设备清单请查看邮件。
233456︱截止2017年05月22日 17:09 您部门有2台设备未升级,未升级设备清单请查看邮件。
234456︱截止2017年05月22日 17:09 您部门有2台设备未升级,未升级设备清单请查看邮件。
作者: cfwyy77_bat    时间: 2017-5-23 08:45

for /f 就可以了啊
  1. @echo off
  2. for /f "tokens=1-4 delims=|" %%a in (1.txt) do (
  3. echo %%a^|%%d >>2.txt
  4. echo %%b^|%%d >>2.txt
  5. echo %%c^|%%d >>2.txt
  6. )
复制代码

作者: ShowCode    时间: 2017-5-23 23:12

回复 2# cfwyy77_bat
  1. @echo off
  2. (for /f "tokens=1-4 delims=|" %%a in (1.txt) do (
  3. echo %%a^|%%d
  4. echo %%b^|%%d
  5. echo %%c^|%%d
  6. ))>2.txt
复制代码
这样可以提高执行效率




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