Параметры командной строки (Command Line Parameters, CMD)
Специальный массив $CmdLine содержит параметры командной строки, переданные скрипту AutoIt при запуске. При этом имя файла скрипта не попадает в этот массив. Используйте макрос @ScriptName, если его необходимо получить. Параметры, содержащие пробелы, должны быть заключены в "двойные кавычки". Скомпилированный скрипт принимает параметры командной строки так же, как и исходный скрипт.
$CmdLine[0] - число параметров
$CmdLine[1] - параметр 1 (идущий после имени скрипта)
$CmdLine[2] - параметр 2 и т.д.
...
$CmdLine[$CmdLine[0]] - простой способ получить последний параметр...
К примеру, если скрипт запущен таким образом:
AutoIt3.exe myscript.au3 param1 "this is another param"
$CmdLine[0] равно... 2
$CmdLine[1] равно... param1
$CmdLine[2] равно... this is another param
@ScriptName равно... myscript.au3
В дополнение к $CmdLine существует переменная $CmdLineRaw, которая содержит параметры командной строки в исходном виде. Пример:
$CmdLineRaw равно... myscript.au3 param1 "this is another param"
Скомпилированный скрипт принимает параметры точно так же:
myscript.exe param1 "this is another param"
$CmdLineRaw равно... param1 "this is another param"
Обратите внимание, что $CmdLineRaw для нескомпилированных скриптов возвращает также и имя скрипта и параметры /ErrorStdOut, /AutoIt3ExecuteScript, если они есть.
Замечание: массив $CmdLine[...] может вернуть не более 63 параметров, а $CmdLineRaw всегда возвращает полную строку параметров.