Я работаю с довольно простым командным файлом в Windows 7, где я хочу иметь возможность определять несколько переменных, а затем использовать их в команде. Это код, который я до сих пор:Использование переменной в пакетном файле
@ECHO OFF
set $servertype=IIS
set $servername=MJNHNX4
set $folder=C:\Logfiles
set $database=Perfmoncounters
if $servertype=IIS
C:\Program Files (x86)\Log Parser 2.2\logparser.exe "Select * into IISCounters from "$folder\IIS_Log.csv"" -i:CSV -o:SQL -server:$servername -database:$database -driver:"SQL Server" -fixcolnames:ON -createTable:ON
if $servertype=SQL
C:\Program Files (x86)\Log Parser 2.2\logparser.exe "Select * into SQLCounters from "$folder\SQL_Log.csv"" -i:CSV -o:SQL -server:$servername -database:$database -driver:"SQL Server" -fixcolnames:ON -createTable:ON
if $servertype=Client
C:\Program Files (x86)\Log Parser 2.2\logparser.exe "Select * into ClientCounters from "$folder\Client_Log.csv"" -i:CSV -o:SQL -server:$servername -database:$database -driver:"SQL Server" -fixcolnames:ON -createTable:ON
Однако, когда я запускаю его, он говорит "=IIS was unexpected at this time"
. Является ли заявление «Мой» плохо отформатированным?
Я принял этот ответ, но там было несколько изменений необходимо, чтобы сделать его фактически произведение. Вот окончательный код, который в конечном итоге работает: '@echo от множество $ ServerType = IIS набор $ ServerName = MJNHNX4 набор $ папка = C: \ LogFiles множества $ базы данных = Perfmoncounters набор $ LogParser = C: \ Program Файлы (x86) \ Log Parser 2.2 \ logparser.exe if% $ servertype% == IIS "% $ logparser%" "Выбрать * в IISCounters из папки% $% \ IIS_Log.csv" -i: CSV -o: SQL -server:% $ servername% -database:% $ database% -driver: "SQL Server" -fixcolnames: ON -createTable: ON' –