2014-12-25 35 views
-1

我正在嘗試'閱讀'一個腳本(即this one,但這不重要),但我被困在一個部分。我無法理解腳本在這裏做什麼,也許是因爲我不知道太多的shell腳本,也許是因爲我習慣於使用腳本而不僅僅是#!/ bin/sh。不明確的部分外殼腳本

這裏的部分我無法理解:

if {[info exists argv] && $argv != ""} { 
    package require cadwidgets::GeometryIO 
    set target [cadwidgets::geom_load [lindex $argv 0] 1] 
    $::ArcherCore::application Load $target 
} 

是什麼意思?感謝您的關注!

回答

2

這並不重要

事實上,這是最重要的缺失的部分。該腳本在運行wish,不sh

exec "$WISH" "$0" "[email protected]" 
+2

...這意味着它是一個[Tcl的(http://stackoverflow.com/tags/tcl)腳本。 – Joe

+0

它實際上是一個混合'sh' /'tcl'腳本。 '#\'行被Tcl解釋爲多行註釋,但不是'sh',所以腳本的'sh'部分在Tcl解釋器運行後隱藏。 – chepner

+0

謝謝!我從來沒有這樣想過。 – shardulc