从文件交换文本的批处理命令
Batch commands to swap text from file
这是输入文件:-
Hello,1-23456
How are you,2-34567
.
.
.
我要输出:-
1-23456,Hello
2-34567,How are you
.
.
.
请帮我创建一个批处理文件。
我试过了
@echo off &setlocal
set "textfile=inputchq.csv"
set "newfile=output.txt"
(for /f "tokens=1,2 delims=," %%i in (%textfile%) do set srno=%%a&set comments=%%b (
set "line=%%i"
setlocal enabledelayedexpansion
set "line=%comments%,%srno%"
echo(!line!
endlocal
))>>"%newfile%"
但我没有得到想要的输出
@echo off &setlocal
set "textfile=inputchq.csv"
set "newfile=output.txt"
(for /f "tokens=1,2 delims=," %%a in (%textfile%) do (
echo %%b,%%a"
))>>"%newfile%"
编辑以匹配评论中的附加要求:
您需要延迟扩展并转义特殊字符“|”
@echo off
setlocal enabledelayedexpansion
set "textfile=inputchq.csv"
set "newfile=output.txt"
(for /f "tokens=1,2 delims=," %%a in (%textfile%) do (
set "line=%%b,%%a"
echo !line:^|=.!
))>>%newfile%
这是输入文件:-
Hello,1-23456 How are you,2-34567 . . .
我要输出:-
1-23456,Hello 2-34567,How are you . . .
请帮我创建一个批处理文件。
我试过了
@echo off &setlocal set "textfile=inputchq.csv" set "newfile=output.txt" (for /f "tokens=1,2 delims=," %%i in (%textfile%) do set srno=%%a&set comments=%%b ( set "line=%%i" setlocal enabledelayedexpansion set "line=%comments%,%srno%" echo(!line! endlocal ))>>"%newfile%"
但我没有得到想要的输出
@echo off &setlocal
set "textfile=inputchq.csv"
set "newfile=output.txt"
(for /f "tokens=1,2 delims=," %%a in (%textfile%) do (
echo %%b,%%a"
))>>"%newfile%"
编辑以匹配评论中的附加要求:
您需要延迟扩展并转义特殊字符“|”
@echo off
setlocal enabledelayedexpansion
set "textfile=inputchq.csv"
set "newfile=output.txt"
(for /f "tokens=1,2 delims=," %%a in (%textfile%) do (
set "line=%%b,%%a"
echo !line:^|=.!
))>>%newfile%