我有一个自动创建的CSV文件,其中包含多个列。其中一列称为“sn”。我需要确保sn永远不是CSV文件中的第一列。不幸的是我无法编辑创建程序的程序。
因此,在批处理文件中,我想:
这是否可以在批处理文件中使用?
感谢。
答案 0 :(得分:0)
@ECHO OFF
SETLOCAL
(
SET "choosing="
SET "movecol="
FOR /f "tokens=1*delims=," %%a IN (q20995223.txt) DO (
IF NOT DEFINED choosing (
IF "%%a"=="sn" SET movecol=Y
SET choosing=N
)
IF DEFINED movecol (ECHO(%%b,%%a) ELSE (ECHO(%%a,%%b)
)
)>newfile.txt
GOTO :EOF
如果第一行的第一列包含sn
,则其余列向左移动一列,sn
列移至最后一列。否则,文件将简单地复制到newfile.txt
q20995223.txt
是我的测试文件。重命名它们是你的任务。