Вы можете использовать функцию автозагрузки Tcl.Стандартный способ - поместить файл (ы) с вашими процедурами в один из каталогов, перечисленных в переменной auto_path.Затем выполните команду auto_mkindex для этого каталога и файлов.Это создаст файл с именем tclIndex в каталоге.
Затем вы можете просто использовать процедуры в ваших скриптах, и они будут автоматически загружаться при использовании.
Если вы хотите, вы можете получить многоболее творческийПо сути, функция автозагрузки ищет элемент с именем процедуры в массиве auto_index.Ожидается, что значением элемента массива будет команда, которая будет выполнена и должна привести к созданию процедуры (или команды).
Пример: предположим, что / usr / share / tcl находится в вашем auto_path (вы также можете использовать каталог, который не находится в auto_path по умолчанию, но затем вы должны добавить его в начале каждого скрипта).Вы создаете каталог в / usr / share / tcl с именем helpers.В этом каталоге вы создаете файлы с некоторыми командами, которые вам нравятся, чтобы быть доступными для всех ваших скриптов.Как файл с именем cat.tcl:
proc cat {filename} {
if {[catch {open $filename} fd opts]} {
return -options [dict incr opts -level] -errorinfo "" $fd
}
try {
return [read -nonewline $fd]
} finally {
close $fd
}
}
Затем вы запускаете tclsh (для указанного каталога вам, вероятно, нужно сделать это как root) и запускаете следующую команду:
auto_mkindex /usr/share/tcl helpers/*.tcl
Это создает файл с именем tclIndex в / usr / share / tcl.С этого момента вы можете просто использовать команду cat в любом сеансе или скрипте Tcl:
cat /etc/motd