Команда gets , вероятно, то, что вы хотите.
set data [gets stdin]
# or
set numchars [gets stdin data]
Команда scan может использоваться для синтаксического анализа ввода аналогично тому, как scanf работает с C. Он использует формат:
формат строки сканирования? varName varName ...?
Таким образом, для разбора ввода типа «5 кошек» по отдельным переменным:
set data [gets stdin]
scan $data "%d %s" myint mystring
Редактировать: Добавлена дополнительная информация из комментария Колина.