Что нужно помнить о Expect, так это то, что это на самом деле просто расширение для Tcl, поэтому, если вам нужна помощь в написании сценариев Expect, и ваш вопрос не связан ни с одной из конкретных команд Expect, вам следует попробовать поискать Tcl ссылки. Хорошее стартовое место - http://www.tcl.tk,, а также http://wiki.tcl.tk.
Есть два способа сделать то, что вы пытаетесь сделать: incr
и expr
. incr
может использоваться, когда вы добавляете целочисленное значение к другому целому числу. Это очень быстро для этой операции. Например:
set value 1
incr value
Однако incr
не работает с нецелыми значениями и не может ничего делать, кроме сложения (или вычитания, если вы отрицаете приращение, как в incr value -1
). Если вам нужно что-то более сложное, вы должны использовать expr
:
set value 1
set value [expr {$value + 1}]
Обратите внимание на использование фигурных скобок вокруг выражения! Хотя они не требуются для правильной работы в целом, они улучшают производительность. Если вы выполняете много арифметических операций, использование скобок вокруг выражений значительно улучшит производительность вашего скрипта. Для получения дополнительной информации см. http://wiki.tcl.tk/10225. При использовании expr
.
вы должны привыкнуть к
всегда .
Вы можете найти ссылки на несколько ресурсов Expect по адресу http://wiki.tcl.tk/201.