Differenza nell'esecuzione dello script TCL con e senza "-F"
Domanda
Ho un file di script TCL denominato hello.tcl
, con il seguente contenuto:
puts "hello world"
.
Quando lo eseguo su bash usando il comando,
tclsh hello.tcl
.
Ho la stampa Ciao.
Tuttavia, se utilizzo tclsh -f
anziché solo tclsh
sopra, non ottengo alcuna stampa, solo il prompt TCL.Perché non ottengo stampe nel secondo caso?
Soluzione
La sintassi di tclsh
è:
tclsh ?-encoding name? ?fileName arg arg ...?
.
significa che puoi chiamarlo come questo:
tclsh hell.tcl
tclsh -encoding (something) hell.tcl
.
Qualsiasi altra cosa è un errore.Invece di abbaiarti, tclsh
ignora silenziosamente l'errore e apri il guscio.
TCL Command Notation
Ho trovato la notazione di comando TCL un po 'strano all'inizio, e non ho trovato alcun riferimento a qualsiasi riferimento.Tuttavia, ecco cosa capisco:
- .
- La notazione
? ... ?
significa opzionale - I comandi TCL utilizzano un singolo trattino al contrario del doppio trattino:
-encoding
anziché '--encoding`
Manuale
Come per l'aiuto, ho installato ActiveState TCL 8.5 e viene fornito con un file chiamato activetclhelp8.5.chm , che è la mia Bibbia.Questo file è molto dettagliato, con capacità di ricerca completa.Non posso darti quel file per paura delle implicazioni legali, ma puoi installare Activestate TCL per ottenerlo.