2012-11-22 35 views
2

我正在使用以下脚本来执行一堆.sql语句。如何对批处理文件的输入进行排序

@echo off 
ECHO %USERNAME% started the batch process at %TIME% >output.txt 

for %%s in (*.sql) do (
sqlcmd.exe -S.\ -E -i "%%s" >>output.txt 
    ) 
pause 

但是,我想确保文件排序(名称),因为我不认为我可以保证列表的顺序。

回答

0

不用担心,用于排序(过程)的名字文件的顺序用这个循环他们,但如果你想另外一种方式来排序的输出文件太:

@echo off 
ECHO %USERNAME% started the batch process at %TIME% >output.txt 

FOR %%s in ("*.sql") do (sqlcmd.exe -S.\ -E -i "%%s" >> "%TEMP%\output.txt") 

TYPE "%TEMP%\output.txt" | SORT > ".\Final_Output.txt" 

Pause&Exit 
1

可以在名称

for /f %%s in ('dir *.sql /b /o:n') do (
sqlcmd.exe -S.\ -E -i "%%s" >>output.txt 
    ) 
pause 
相关问题