Как запустить команду ocatve из терминала с несколькими аргументами, включая матрицу? - PullRequest
0 голосов
/ 21 сентября 2018

Я хочу запустить октавный скрипт из терминала с несколькими аргументами.

рассмотрим функцию

function matrixMultiply (A, x)
  result = A * x ; 
  presult = sprintf('%s %s\n', 'A * x =', mat2str(result));
  printf ("\a%s\n", presult);
endfunction 

Как я могу вызвать эту функцию из терминала.Я попытался использовать

arg_list = argv ();
for i = 1:nargin
  printf (" %s", arg_list{i});
printf ("\n");
endfor

в отдельном скрипте без удачи.

Как я могу запустить

$ octave  matrixMultiply(eye(2) , [3;4])

с терминала?

1 Ответ

0 голосов
/ 21 сентября 2018

Вы можете вызвать свой функциональный файл без использования argv ()

file matrixMultiply.m:

function matrixMultiply (A, x)
  result = A * x ; 
  presult = sprintf('%s %s\n', 'A * x =', mat2str(result));
  printf ("\a%s\n", presult);
endfunction 

с терминала:

$ octave --eval "matrixMultiply(eye(2) , [3;4])"
A * x = [3;4]
...