bat 脚本 把TXT文本列转化为行

a.txtx内容如下:
1001
1002
1003
怎么样转化成b.txt
1001,1002,1003

@echo off & title 文本内容合并为一行
setlocal enabledelayedexpansion

for %%a in (*.txt) do (
set "Str="
for /f "delims=" %%b in ('type "%%~a"') do (
set "Str=!Str!%%~b"
)
>tmp$ echo !Str!
move /y tmp$ "%%~a" >nul
)
pause

@echo off & title 文本内容合并为一行 
setlocal enabledelayedexpansion

for %%a in (*.txt) do (
    set "Str="
    for /f "delims=" %%b in ('type "%%~a"') do (
        set "Str=!Str!%%~b"
    )
    >tmp$ echo !Str!
    move /y tmp$ "%%~a" >nul
)
pause
  1. pr -taJ3 -S'' a.txt
  2. sed '$!N;N;s/\n//g' a.txt
  3. awk '{ORS=NR%3?"":RS}1' a.txt
  4. awk 'NR%3{printf $0"";next}1' a.txt
  5. awk '{printf (NR%3)?$0:$0"\n"}' a.txt
  6. awk '{if(NR%3!=0)ORS="";else ORS="\n"}1' a.txt

setlocal enabledelayedexpansion
for /f "delims=" %%a in (file.txt) do set txt=!txt!%%~a
echo !txt!>New_file.txt

我一般是直接把
1001
1002
1003
粘到word里,替换
将:^p
替换为:,
就好了
1001,1002,1003

执行完是 100110021003 能不能转换成1001,1002,1003这样的,以,分开

用Python+bat实现了