Tag: tcl

Команда Unix не работает в скрипте Tcl

Я новичок в программировании Tcl и UNIX. Следующая команда работает в командной строке UNIX, но не работает в сценарии Tcl. $ sort -b -k8 abc.txt | awk '!a[$1]++' error out for 8 (-k8) and 1($1) is not variable Сначала я пытаюсь сортировать столбец 8, а затем выбирать только уникальные данные в столбце 1. Я также […]

Tcl regexp: Как проверить, содержит ли переменная число?

Ниже приведен скрипт tcl для проверки наличия в переменной 0-9 числа. set a "abc" if {[ regexp {[0-9]*} $a ]} { puts "Found number in $a" } else { puts "Doesn't find number in $a" } Но когда я запускаю его, он сообщает «Найденный номер в abc».

Составить имя файла внутри сценария ожидания

У меня есть файл, который несколько строк, скажем: server_file.txt: [main] server1 param1 param2 param3 server2 param1 param2 param3 Я хочу, чтобы первое значение последнего столбца составляло имя файла в сценарии expect так что имя файла: server2_030417T124700 , где 030417T124700 – текущая дата создания файла. Я смог достигнуть даты с этими строками: #!/usr/bin/expect -f log_file ./log/post.log […]

Извлечение времени из журналов с использованием tcl ожидается

У меня есть журналы со следующим шаблоном: 1,30.10.2014,07:51:07,0,0,1,12,28,255,3,255,255,255,0,0,0; 2001,30.10.2014,07:51:07,0,0,0,300,5,0,255; Мне нужно вывести дату и время … для первой строки. Я делаю следующее: set starttime [string range $procline 2 20] Но как я могу его извлечь, если идентификатор (код до времени) длиннее? Я использую expect (tcl). Я попробовал сопоставить строку, но, возможно, я делаю что-то неправильно. […]

Tcl / Expect: Невозможно правильно установить значение переменной

Я новичок в Tcl / Expect. Я пытаюсь получить информацию о туннеле IPSec с маршрутизатора. После этого введите строки с IP-адресами. Итак, я придерживаюсь кода: send "show tunnel ipsec remote 10.10.10.10\r" expect "local" send "\r" set outcome $expect_out(buffer) set records [split $outcome "\n"] foreach rec $records { if {[regexp {\*.*$} $rec tunnel_name]} { regsub -all […]

Установка Expect и TCL

Я загрузил источник для expect5.45, и я пытаюсь установить его. tclsh находится в системе в / usr / bin / tclsh, но я не уверен, что это означает, что на компьютере также установлен «tcl»? Инструкции для Expect: По умолчанию предполагается, что исходный каталог Tcl находится в том же каталоге, что и исходный каталог Expect. Например, […]

Запуск gui из события acpi

Я сделал приложение tkinter для нажатия кнопки питания, но оно не запускается, когда это нужно. Хотя, если я использую echo hello>>~/junk как действие acpi, он добавляет привет в мусор для каждой кнопки питания. Добавление exec или точки перед командой действия (для ее выполнения в текущей оболочке) не помогло. Как я могу заставить его работать? Редактировать: […]

Ошибка tkdiff в Linux Redhat 5.5

Я установил tkdiff как root, и он работает нормально под этим пользователем, но когда я переключаюсь на локального пользователя, я получаю ошибку: Ошибка инициализации приложения: невозможно найти полезный init.tcl в следующих каталогах: /usr/local/lib/tcl8.0 /pune/tools/synopsys/vera/2009.12-6/vera_vD-2009.12-6_linux/lib/tcl8.0 /pune/tools/synopsys/vera/2009.12-6/tcl8.0 / library /pune/tools/synopsys/vera/2009.12-6/vera_vD-2009.12-6_linux/library Вероятно, это означает, что Tcl установлен неправильно. Ошибка при запуске скрипта: не удается найти пакет Tk 8.0 […]

rlwrap: многоязычное автозаполнение tclsh

Как получить многословное автозаполнение с помощью rlwrap для tclsh ? Пример: Я набираю file <space> затем нажимаю <tab> <tab> Я хочу видеть только isdirectory в file , например, isdirectory или isfile . Я попытался добавить file\ isfile (т.е. экранирование пробела) в файл завершения, но это не помогло. Это просто вызвало isfile как другую команду автозаполнения. […]

Создайте каталог, если он не существует в TCL

Я пишу сценарий ожидания, который заходит на удаленную машину и запускает там несколько скриптов. Но мне нужно также проверить следующие Проверьте, существует ли каталог /var/cti/adm/APP . Если APP не существует в каталоге adm , необходимо создать этот каталог и добавить право собственности в этот каталог (как система chown) Пожалуйста, совет, как проверить, существует ли каталог […]

Linux и Unix - лучшая ОС в мире.