Tcl 如何设置捕获搜索消息是否为空

Tcl 如何设置捕获搜索消息是否为空,tcl,irc,eggdrop,Tcl,Irc,Eggdrop,如果需要,请在数据中查找 向目标发送邮件效果很好。 如果搜索到的数据为空,则无法工作,请指出此脚本是否不完整或错误。我在这一行找到了解决方案: bind pub - "!find" pub:cari proc pub:cari { nick host hand chan text } { set judul [lindex $text 0] if { $judul == ""} { puthelp "notice $nick :ketik !find <p

如果需要,请在数据中查找 向目标发送邮件效果很好。
如果搜索到的数据为空,则无法工作,请指出此脚本是否不完整或错误。

我在这一行找到了解决方案:

bind pub - "!find" pub:cari

proc pub:cari { nick host hand chan text } {
    set judul [lindex $text 0]
    if { $judul == ""} {
        puthelp "notice $nick :ketik !find <penyanyi/artis>"
        return
    } else {
        putquick "notice $nick :being processed $judul"
        catch [list exec find /home/gusman/mp3 -name "*$judul*" -type f -printf "%f\n"] data
        putserv "notice $nick :!putar $data"
        putserv "notice $nick :copy paste di channel !putar $data"
    }
}

putlog "find.tcl"

这样行吗

if { $judul == ""}

通常在TCL中,如果没有向函数传递足够的参数,就会出现错误。如果您不知道函数将接受多少个参数,可以将最后一个参数命名为args,并且任何额外的参数都将作为列表放入此变量。

在问题中发布代码,而不是在图像链接中:很抱歉出错。你能帮我找到一个脚本的解决方案吗?是的,它似乎有效,只是我的问题,如何发布行,我在捕获日志中检查的油漆按照我的预期编写。这一切都完成了,只是并不是所有的linux操作系统或类似的系统都工作得很好,例如:在debian中工作得很好,但在ubuntu和gento中却失败了。
    proc pub:cari { args } {
        lassign $args nick host hand chan text
        ...