У меня были проблемы с экраном: Matlab запустился, но понятия не имел, что было передано через stdin. Он просто проигнорировал это.
Но мне удалось с tmux . Вот командная строка, которую я использовал,
local$ ssh -f me@remote 'tmux new-session -d -s matlab "matlab -nojvm -nodesktop -nodisplay -nosplash </path/to/myscript.m"'
Затем вы можете подключиться по ssh к удаленному хосту (указанному здесь как префикс remote$
) и проверить все, введя remote$ tmux a -t matlab
. Вы отключаетесь от удаленного хоста, нажимая Ctrl-b d
. Вы перечисляете сеансы с remote$ tmux ls
(например, экран). Вы убиваете сеанс изнутри с помощью Ctrl-b &
, а снаружи - с помощью $remote tmux kill-session -t matlab
.
Но я обнаружил, что вы также можете напрямую подключиться к сеансу tmux с локального хоста:
local$ ssh -t me@remote 'tmux a -t matlab'
Обратите внимание, что мне пришлось использовать -t
здесь вместо -f
.