Как передать массив tcl в perl аргумент командной строки - PullRequest
0 голосов
/ 10 марта 2020

Я хочу вызвать perl скрипт из tcl, в котором я хочу отправить массив tcl в perl аргумент командной строки и как использовать внутри в perl script

Спасибо,

1 Ответ

0 голосов
/ 10 марта 2020

Учитывая массив Tcl

array set ary {foo 11 bar 12 baz 13}

Вы можете передать его perl следующим образом:

exec perl script.pl {*}[array get ary]

А в perl вы можете сказать

my %hash = @ARGV;

Демонстрация (из приглашения оболочки):

$ echo '
  array set ary {foo "11 22" bar 12 baz 13}
  puts [exec perl -MData::Dump=dd -e {my %hash = @ARGV; dd \%hash} {*}[array get ary]]
' | tclsh
{ bar => 12, baz => 13, foo => "11 22" }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...