Описание команды | |
await |
Приостановка выполнение последующих команд до выполнения условия.
await=Mode
Параметры:
Mode | Режим приостановки. Mode||Timeout||Conditions , где: Mode - режим приостановки. Timeout[необязательный] - приостановка в миллисекундах, по умолчанию 0 - бесконечное ожидание. для дополнительного формата необходимо в конце добавить символ: s - задержка в секундах. n - задержка в минутах. h - задержка в часах. d - задержка в днях. Mode - режим: 0 - проверка изменения буфера обмена. 0||Timeout||String||Include String [необязательный] - возможны варианты: • слово или фраза для поиска в буфере обмена. • &&RegExp - регулярное выражения поиска. • ??Key - ключ из TCIMG.ini из секции [FormatUser], в котором прописано регулярное выражение для поиска. Include [необязательный] - включить или исключить указанное в условии: 0 - найти всё кроме заданного условия. 1 - найти указанное (по умолчанию). 1 - проверка изменения в заданном каталоге. 1||Timeout||Folder||Subtree||Filter||Name||Include Folder - путь в каталогу в котором будет производится мониторинг. Subtree [необязательный] - рекурсия: 0 - проверка производится в корневой папке (по умолчанию). 1 - с рекурсией. Filter [необязательный] - что отслеживать: 0 - отслеживаются любые изменения (по умолчанию). нужные цифры могут прописываться через запятую. 1 - отслеживается создание объекта. 2 - отслеживается удаление/перемещение объекта. 3 - отслеживается изменение объекта (атрибуты, дата, содержимое). 4 - отслеживается переименование объекта. Name [необязательный] - проверка имени объекта, возможны варианты: • имя или часть имени файла или каталога. • &&RegExp - регулярное выражения поиска. • ??Key - ключ из TCIMG.ini из секции [FormatUser], в котором прописано регулярное выражение для поиска. Include [необязательный] - включить или исключить указанное в условии: 0 - найти всё кроме заданного условия. 1 - найти указанное (по умолчанию). 2 - проверка изменения значения ключа INI файла. 2||Timeout||FileINI||Section||Key||Value||Include FileINI - путь к стандартному ini-файлу. Section - имя секции в ini-файле. Key - имя ключа параметра в ini-файле, значение которого проверяется. Value [необязательный] - проверка значения ключа, возможны варианты: • слово или фраза для поиска. • &&RegExp - регулярное выражения поиска. • ??Key - ключ из TCIMG.ini из секции [FormatUser], в котором прописано регулярное выражение для поиска. Include [необязательный] - включить или исключить указанное в условии: 0 - найти всё кроме заданного условия. 1 - найти указанное (по умолчанию). 3 - проверка изменения каталога. 3||Timeout||Folder||ParamTest Folder - путь в каталогу в котором будет производится мониторинг. ParamTest - строка параметров такая же как в параметре test<ParamTest> см. Дополнение №16. 4 - проверка изменения файла. 4||Timeout||File||ParamTest File - путь в файлу для которого будет производится мониторинг. ParamTest - строка параметров такая же как в параметре test<ParamTest> см. Дополнение №16. 5 - проверка изменения файла. 5||Timeout||File||ParamTest File - путь в файлу для которого будет производится мониторинг. ParamTest - строка параметров такая же как в параметре test<ParamTest> см. Дополнение №16. отличается от режима "4" тем, что не проверяется физическое изменение файла, файл передаётся напрямую в параметр test<> актуально для "заблокированных" файлов или файлов, в которые идёт запись информации сторонними программами. 9 - проверка указанного окна. 9||Timeout||Window||Option Window - дескриптор/класс окна. Варианты см. Дополнение №36. Option 0 - приостановка до появления указанного окна. ниже параметры при которых окно должно существовать, в ином случае приостановки не будет. 1 - приостановка до активизации указанного окна. 2 - приостановка до закрытия указанного окна. 3 - приостановка до того как указанное окно перестанет быть активным. 4 - приостановка до того как окно не будет свёрнуто. 5 - приостановка до того как окно будет не свёрнуто. 6 - приостановка до того как окно не будет развёрнуто. 7 - приостановка до того как окно будет не развёрнуто. 8 - приостановка до того как окно будет не развёрнуто и не свёрнуто. 9 - приостановка до того как окно не будет либо развёрнуто либо свёрнуто. 10 - приостановка до того как окно не будет перемещено. 11 - приостановка до того как ширина окна не изменится. 12 - приостановка до того как высота окна не изменится. 13 - приостановка до того как ширина или высота окна не изменится. 10 - проверка текста элементов указанного окна. 10||Timeout||Window||Level||String||Include Window - дескриптор/класс окна. Варианты см. Дополнение №36. Level - уровень дочерних элементов (по умолчанию 0 - получение информации со всех элементов) String [необязательный] - возможны варианты: • слово или фраза для поиска в информации элементов окна. • &&RegExp - регулярное выражения поиска. • ??Key - ключ из TCIMG.ini из секции [FormatUser], в котором прописано регулярное выражение для поиска. Include [необязательный] - включить или исключить указанное в условии: 0 - найти всё кроме заданного условия. 1 - найти указанное (по умолчанию). приостановка пока не будет найдена заданная фраза в элементах окна. информация в которой происходит поиск вы можете посмотреть в команде: infos=2||25||WINDOW||0||1 GLOBALINFOS1<a> 20 - проверка панели инструментов Total Commander. 20||Timeout||Option Option 0 - панель инструментов. 1 - вертикальная панель инструментов. приостановка пока не будет открыта другая панель инструментов. если панель инструментов отключена, то приостановки не будет. 30 - проверка нажатия клавиш(и). 30||Timeout||HotKey HotKey - значение или значения клавиш, прописанных через запятую см. Дополнение №16. приостановка пока не будет нажата заданная клавиша (нажаты заданные клавиши). |
Примечания:
Команда имеет возможность передавать другим командам информацию через именные глобальные переменные. см. Дополнение №23См. также:
beepss, delvlc, dilog, fontx, formt, imgpr, infbx, infht, itray, movlc, posts, prgrs, shape, sndps, style, stylp, tcgup, tslit, voice, watch, winls, wnamp
Примеры: | Как создать кнопку? |
<FOR> 1 <TO> 9999999 exect=$var_i=@MIN=60?_CmdCm('$FOREXIT=1'):0 cends=<info=s30> await=0 aends=x||##rndm<3|10> creat=$f254||buf-GLOBALAENDS<1>.txt||content<$GLOBALAENDS[1]>||code<4>||owrite<1> bends=<info=o30$f254\buf-GLOBALAENDS<1>.txt> GLOBALCENDS<a> GLOBALBENDS<a> dends=<info=n49|GLOBALBENDS<1>-GLOBALCENDS<1>> GLOBALDENDS<a> exect=$var_trig=GLOBALDENDS<1>>=300?_CmdCm('infbx=InfoBox_TEST1'):0 delsm=$f254\buf-GLOBALAENDS<1>.txt||1 <NEXT> tempxx ;; запустить отслеживание времени для последнего доступа к буферу (на определенное время в минутах, максимально 60 минут) и если оно больше 5 минут, вывести уведомление
await=0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена
await=0||0||&&(\d) infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не появится любая цифра
await=0||0||&&(\d)||0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не появится информация, в которой не будет не одной цифры
await=0||0||??words1 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не появится русское слово более 2-х символов
await=0||0||??words1||0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не будет русского слова более 2-х символов
await=0||0||Name infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не появится слово "Name"
await=0||0||Name||0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет изменён буфера обмена и пока в нём не будет слово "Name"
await=0||5s infbx=InfoBox_TEST1 ;; приостановить действие команд на 5 секунд или пока не будет изменён буфера обмена
await=1||0||"%P" infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдут какие-либо изменения
await=1||0||"%P"||0||0||&&(\d) infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт любое изменение объекта, в котором есть цифра
await=1||0||"%P"||0||0||??words1 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт любое изменение объекта, в котором есть русское слово более 2-х символов
await=1||0||"%P"||0||0||Name infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт любое изменение объекта, в котором есть слово "Name"
await=1||0||"%P"||0||0||Name||0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт любое изменение объекта, в котором нет слова "Name"
await=1||0||"%P"||0||1 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт создания объекта
await=1||0||"%P"||0||1,4||&&^Test\.xxx$ infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не появится файл Test.xxx
await=1||0||"%P"||0||2 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папке не произойдёт создания объекта
await=1||0||"%P"||0||3||&&^\Q%N\E$ infbx=InfoBox_TEST1 ;; приостановить действие команд пока файл под курсором не будет изменён (атрибуты, дата, содержимое)
await=1||0||"%P"||1 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в текущей папке (с рекурсией) не произойдут какие-либо изменения
await=2||0||C:\File.ini||xxx||key infbx=InfoBox_TEST1 ;; приостановить действие команд пока в ini файле не изменится значение ключа key в секции xxx
await=2||0||C:\File.ini||xxx||key||&&(\d) infbx=InfoBox_TEST1 ;; приостановить действие команд пока в ini файле не изменится значение ключа key в секции xxx и пока в значении не появится цифра
await=2||0||C:\File.ini||xxx||key||??words2 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в ini файле не изменится значение ключа key в секции xxx и пока в значении не появится более 2-х латинских символов
await=2||0||C:\File.ini||xxx||key||Name infbx=InfoBox_TEST1 ;; приостановить действие команд пока в ini файле не изменится значение ключа key в секции xxx и пока в значении не появится слово "Name"
await=20||0||0 sends=@<info=x50> GLOBALSENDS<a> ;; приостановить действие команд пока не будет открыта другая основная панель инструментов (TC 10.5)
await=20||0||1 sends=@<info=x50|1> GLOBALSENDS<a> ;; приостановить действие команд пока не будет открыта другая вертикальная панель инструментов (TC 10.5)
await=3||0||"%P"||10f!!=5!!=5 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в текущей папке с рекурсией не будет ровно 5 файлов и 5 подпапок (если они уже есть, то приостановки не будет)
await=3||0||"%P"||12f!!=0!!=0 infbx=InfoBox_TEST1 ;; приостановить действие команд пока текущая папка не станет пустой (если она уже пустая, то приостановки не будет)
await=3||0||"%P"||12f!!=5!!=5 infbx=InfoBox_TEST1 ;; приостановить действие команд пока в корне текущей папки не будет ровно 5 файлов и 5 подпапок (если они уже есть, то приостановки не будет)
await=30||0||11 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет нажата клавиша CTRL
await=30||0||11,10,41 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет нажаты клавиши CTRL+SHIFT+A
await=30||0||24 infbx=InfoBox_TEST1 ;; приостановить действие команд пока не будет нажата клавиша HOME
creat="%P"||Test.xxx await=1||0||"%P"||0||2||&&^Test\.xxx$ infbx=InfoBox_TEST1 ;; приостановить действие команд пока из текущей папки не будет удалён/перемещён файл Test.xxx
global await=0 infbx=InfoBox_TEST1 GLOBALAWAIT<a> ;; приостановить действие команд пока не будет изменён буфера обмена и записать новое содержимое в глобальную переменную
global await=1||0||"%P"||0||4 GLOBALAWAIT<a> ;; приостановить действие команд пока в корне текущей папке не произойдёт переименование объекта
global await=1||30s||"%P"||0||4 GLOBALAWAIT<a> ;; приостановить действие команд пока в корне текущей папке не произойдёт переименование объекта, если нет, то через 30 секунд слежение за папкой прекращается
global await=2||0||C:\File.ini||xxx||key GLOBALAWAIT<a> ;; приостановить действие команд пока в ini файле не изменится значение ключа key в секции xxx
global await=20||0||0 GLOBALAWAIT<a> ;; приостановить действие команд пока не будет открыта другая основная панель инструментов (TC 10.5)
global await=20||0||1 GLOBALAWAIT<a> ;; приостановить действие команд пока не будет открыта другая вертикальная панель инструментов (TC 10.5)
global await=3||0||"%P"||1r!!4M GLOBALAWAIT<a> ;; приостановить действие команд пока размер текущей папки с рекурсией не будет больше 4 Mb (если размер уже больше, то приостановки не будет)
global await=3||0||"%P"||1r!!4M!! GLOBALAWAIT<a> ;; приостановить действие команд пока размер текущей папки в корне не будет больше 4 Mb (если размер уже больше, то приостановки не будет)
global await=30||30s||11 GLOBALAWAIT<a> ;; приостановить действие команд на 30 секунд пока не будет нажата клавиша CTRL
global await=4||0||%P%N||1r!!1M GLOBALAWAIT<a> ;; приостановить действие команд пока размер файла под курсором не превысит 1 Mb (если размер уже больше, то приостановки не будет)
global await=4||0||%P%N||2r!!0B GLOBALAWAIT<a> ;; приостановить действие команд пока размер файла под курсором не обнулится (если размер уже нулевой, то приостановки не будет)
global await=4||20n||%P%N||1r!!1M GLOBALAWAIT<a> ;; приостановить действие команд на 20 минут пока размер файла под курсором не превысит 1 Mb (если размер уже больше, то приостановки не будет)
global await=9||0||[CLASS:Notepad]||0 GLOBALAWAIT<a> ;; приостановить действие команд до появления указанного окна (если оно уже существует, то приостановки не будет)
global await=9||0||[CLASS:Notepad]||1 GLOBALAWAIT<a> ;; приостановить действие команд до активизации указанного окна
global await=9||0||[CLASS:Notepad]||10 GLOBALAWAIT<a> ;; приостановить действие команд пока окно не будет перемещено
global await=9||0||[CLASS:Notepad]||11 GLOBALAWAIT<a> ;; приостановить действие команд пока ширина окна не изменится
global await=9||0||[CLASS:Notepad]||12 GLOBALAWAIT<a> ;; приостановить действие команд пока высота окна не изменится
global await=9||0||[CLASS:Notepad]||13 GLOBALAWAIT<a> ;; приостановить действие команд пока ширина или высота окна не изменится
global await=9||0||[CLASS:Notepad]||2 GLOBALAWAIT<a> ;; приостановить действие команд до закрытия указанного окна
global await=9||0||[CLASS:Notepad]||4 GLOBALAWAIT<a> ;; приостановить действие команд пока окно не будет свёрнуто
global await=9||0||[CLASS:Notepad]||5 GLOBALAWAIT<a> ;; приостановить действие команд пока окно будет не свёрнуто
global await=9||0||[CLASS:Notepad]||6 GLOBALAWAIT<a> ;; приостановить действие команд пока окно не будет развёрнуто
global await=9||0||[CLASS:Notepad]||7 GLOBALAWAIT<a> ;; приостановить действие команд пока окно будет не развёрнуто
global await=9||0||[CLASS:Notepad]||8 GLOBALAWAIT<a> ;; приостановить действие команд пока окно будет не развёрнуто и не свёрнуто
global await=9||0||[CLASS:Notepad]||9 GLOBALAWAIT<a> ;; приостановить действие команд пока окно не будет либо развёрнуто либо свёрнуто
global start=notepad await=9||0||[CLASS:Notepad]||0 await=10||0||[CLASS:Notepad]||0||&&\|Value=привет\| GLOBALAWAIT<a> ;; запустить блокнот и приостановить действие команд пока в окне не появится надпись "привет"
global start=notepad await=9||0||[CLASS:Notepad]||0 await=10||0||GLOBALAWAIT<1>||0||&&\|Value=.*привет.*\| GLOBALAWAIT<a> ;; запустить блокнот и приостановить действие команд пока в окне не появится в любом месте надпись "привет"
global start=notepad await=9||0||[CLASS:Notepad]||0 await=10||0||GLOBALAWAIT<1>||0||&&\|Value=привет\| GLOBALAWAIT<a> ;; запустить блокнот и приостановить действие команд пока в окне не появится надпись "привет"
global start=notepad||%P%N||&&procwait await=9||0||[CLASS:Notepad]||3 GLOBALAWAIT<a> ;; запустить Notepad с файлом под курсором и приостановить действие команд до того как указанное окно перестанет быть активным
itray=3 slist=cliplist||formt<1,63> <FOR> 1 <TO> GLOBALSLIST<0> await=30||0||24 openf=GLOBALSLIST<:INDEX:>||Browser||&&wait <NEXT> ;; Поочередное открытие списка ссылок из буфера в браузере при нажатии клавиши HOME
itray=3 slist=cliplist||formt<1,63> <FOR> 1 <TO> GLOBALSLIST<0> rends=:INDEX: openf=GLOBALSLIST<:INDEX:>||Browser||&&wait exect=$var_trig1=(GLOBALRENDS<1><GLOBALSLIST<0>)?_CmdCm('await=30¦¦0¦¦24'):0 <NEXT> ;; поочередное открытие списка ссылок из буфера в браузере (последующая ссылка открывается после нажатия клавиши HOME)
sends=%WL??-1||&?(?mi)^.+\.gif$ forpgs <FOR> 1 <TO> GLOBALSENDS<0> bends=@GLOBALSENDS<:INDEX:>??-1||&?(.+\\)([^\\]+) start=SGIFPRO||param<GLOBALSENDS<:INDEX:>>||&&hide await=1||0||GLOBALBENDS<1>||1,3||GLOBALBENDS<2>.BAK close=SGIFPRO.exe <NEXT> ;; передать поочерёдно список выделенных gif файлов в программу SGIFPRO, отслеживать создание файла BAK, после чего процесс программы закрывается
start=C:\Tor\tor.exe||-f||torrc||workdir<C:\Tor\>||&&procwait||&&min pause=1s global await=5||0||C:\Tor\notice.log||1t!!100%%~~(done) GLOBALAWAIT<a> close=tor.exe delsm=C:\Tor\notice.log||1 ;; запустить программу tor.exe, приостановить дальнейшее действие команд, пока в файле notice.log не появится фраза "100%~~(done)", после появления, закрыть процесс и удалить лог