2016-03-06 206 views
1

这是输入文件交换文本: -批处理命令从文件

 
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%" 

,但我没有得到期望的输出

+2

你有什么试过?在尝试解决你自己的问题之前,请先尝试解决你的问题,然后将你提出的问题添加到你的问题中。 –

+0

我试图解决这个问题,请看看并帮助我 –

回答

0
@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% 
+0

在这个相同的解决方案中,我想替换所有“|”与“。”我可以在哪里添加这个循环。请帮助。 –

+0

请参阅我的编辑。 – Stephan