TCL期待。如何从输出中获取特定符号?

时间:2016-12-02 02:43:36

标签: tcl expect

在编程方面经验很少,而且在TCL期待中几乎没有任何经验,但被迫使用它。 我有这样的输出:

SMG2016-[CONFIG]-SIP-USERS> add user 1200011 adm.voip.partner.ru 0
Creating new Sip-User.
'SIP USER' [00] ID [1]:
                      name:                  Subscriber#000
                      IPaddr:                0.0.0.0
                      SIP domain:            adm.voip.partner.ru
                      dynamic registration:  off
                      number:                1200011
                      Numplan:               0
                      number list:
                         00)                 ---
                         01)                 none
                         02)                 none
                         03)                 none
                         04)                 none
                      AON number:
                      AON type number:       subscriber
                      profile:               0
                      category:              1
                      access cat:            0
                      auth:                  none
                      cliro:                 off
                      pbxprofile:            0
                      access mode:           on
                      lines:                 1
                      No src-port control:   off
                      BLF usage:             off
                      BLF subscribers:       10
                      Intercom mode:         sendonly
                      Intercom priority:     3

所以我需要在“SIP USER'”中输入变量00。 [00]字符串,并且括号中的数字最多可以是行中的四位数。

我怎么这么做?有什么帮助吗?

UPD: 做完这个,对我来说很有用,即使遇到第一个零也有问题。

expect -indices -re "'SIP USER' .{1}(\[0-9]{2,4}).{1}"
set userid [string trimleft $expect_out(1,string) "0"]

0 个答案:

没有答案