标题: [文本处理] 【已解决】BAT:多列多行数值,如何按特定方式转置 [打印本页]
作者: 思想之翼 时间: 2023-9-9 12:32 标题: 【已解决】BAT:多列多行数值,如何按特定方式转置
本帖最后由 思想之翼 于 2023-9-9 16:56 编辑
【问题1】
D:\DATA\1.txt记录格式如下:
000 12345678
001 124
789 3
欲将多列多行数值,转置成1行,结果为:
000 12345678 001 124 789 3
【问题2】
D:\DATA\2.txt记录格式如下:
000 12345678 001 124 789 3
556 9 001 2589 666 541
欲将多列多行数值,每隔2列,转置成2列多行,结果为:
000 12345678
556 9
001 124
001 2589
789 3
666 541
或者逐行逐次每隔2列,转置成2列多行,结果为:
000 12345678
001 124
789 3
556 9
001 2589
666 541
作者: wanghan519 时间: 2023-9-9 12:46
本帖最后由 wanghan519 于 2023-9-9 14:21 编辑
xargs
xargs -n2
作者: 77七 时间: 2023-9-9 13:08
本帖最后由 77七 于 2023-9-9 13:10 编辑
code1- @echo off
- (for /f "useback delims=" %%a in ("1.txt") do (
- for %%b in (%%a) do (
- set /p=%%b <nul
- )
- )
- echo=
- )>3.txt
复制代码
code2
- @echo off
- (for /f "useback delims=" %%a in ("2.txt") do (
- call :1 "%%a"
- ))>4.txt
- pause & exit
-
- :1
- set str=%~1
- :loop
- for /f "tokens=1-2*" %%b in ("%str%") do (
- echo %%b %%c
- if "%%d" neq "" (
- set str=%%d
- goto :loop
- ) else exit /b
- )
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |