Неверная операция при попытке запустить tcl-код

Используя терминал, я пытаюсь выполнить скрипт, содержащий код tcl с именем myscript.tcl. В соответствии с учебником, которому я следую, я должен набрать chmod +x myscript.tcl, а затем запустить код, используя ./myscript.tcl. Обратите внимание, что в сценарии tcl я также добавил #!/home/localadmin/Desktop в сценарий согласно учебнику. Однако после выполнения я получаю ошибку Invalid Operation. Почему это происходит и как я могу это исправить?

Точная ошибка: E: Invalid operation ./myscript.tcl

Ссылка на учебное пособие: https://www.youtube.com/watch?v= U5m_vuBzdZE & list = PL7616FA0112D74AD3 & index = 2 , см. 1:10

Код:

#variables set to integer will ALWAYS be integer, cannot assign strings
set x 3

set y 4

#$x means the value of x
#whatever happens after expr will take it as a mathematical expression
#whatever inside brackets is executed
set z [expr $x + $y]

#text is option for command label
#the . represents anything coming from main window after execution
label .sum -text "z is $z"

label .myname -text "My NAME is RAND PAUL"

incr z

label .increment -text "incrementing z -> $z"

#pack puts the previous labels on te main window
#without pack, will discard the labels
pack .myname .increment .sum

Продолжение:

Еще один сценарий у меня -

#!/usr/bin/tclsh


#Lesson 3 tk/tcl lists


set to_do [list]
lappend to_do "name"
lappend to_do "is"
lappend to_do "bobby"
lappend to_do "jones"

set num [list 0 1 2 3 4 5 6 7 8 9 10 11]
puts $to_do
puts $num
puts "index 0 is [lindex $to_do 0]"
puts "index 3 is [lindex $to_do 3]"
puts "replacing one element..."
puts [lreplace $num 3 3 [list 30 40 50 60]]
puts "replacing a range of elements from index 3 till ndex 6 => other indexees from 4 till 6 will deleted"
puts [lreplace $num 3 6 [list 30 40 50 60]]

puts "inserting one element at index 1 (2nd element that is)..."
puts [linsert $num 1 "new list element"]

Выдает ту же ошибку: E: Invalid operation ./lesson3.tcl. Я использовал тот же shebang, который был найден в этом новом файле в исходном посте, и он исправил его, однако у меня все еще остается та же ошибка при попытке запустить этот новый файл.

0
задан 26 September 2019 в 22:11

1 ответ

Я предполагаю причину, которую не выполняет Ваш сценарий, becuase Ваш shebang, является абсолютно неправильным. Точка эти shebang должна сказать компилятор, о каком пакете или программе для запущения скрипта с #!/home/localadmin/Desktop точки ни к чему comipler заботится о (я предполагаю)

, Все остальное выглядит правильным до сих пор (снова, я незнаком с tcl), Таким образом, я попытался бы изменить первую строку в сценарии к чему-то как следующий

myscript.tcl

 #!/usr/bin/tclsh
 my_script.....

, Предполагающий, что это не работает, можно разыскать любые ошибки, которые Вы имеете, который препятствовал бы тому, чтобы сценарий работал (такие как синтаксические ошибки и т.п.) путем выполнения

tclsh your_script.tcl


После просмотра ролика, это учебное руководство не принадлежит Вам (предположение, что Вы действительно выполняете человечность) для того, как выполнить сценарий

1
ответ дан 23 October 2019 в 10:28

Другие вопросы по тегам:

Похожие вопросы: