bash腳本中調用matlab腳本和python腳本,并傳參

1. 在bash腳本中調用MATLAB腳本
首先定義一個腳本 get_ind.sh,這個腳本接收一個參數,并將這個參數傳遞給名為check的matlab腳本,寫法如下:
#!/bin/bash
my_ind=$1
matlab_command="check($my_ind)"
matlab -nodisplay -r "$matlab_command; exit"
其中check.m內容為
function [ind] = check(a)
disp(['item' num2str(a)]);
ind = 10*a;
end
將get_ind.sh作為子腳本的調用方法:
for a in {1..10}
do
a=1
./get_ind.sh $a?
done
2. 在bash腳本中調用PYTHON腳本
首先定義一個腳本 subscript.sh,這個腳本接收三個參數,并將這個參數傳遞給名為mypythonscript的python?腳本,寫法如下:
#!/bin/bash
file_path=$1
x=$2
x=$3
python mypythonscript.py ?"$file_path" $x $y
其中mypythonscrpit.py的內容為
import sys
save_path = sys.argv[1]
x0 = float(sys.argv[2])
y0 = float(sys.argv[3])
將subscript.sh作為子腳本的調用方法:
file_dir="/home/software/"
n=10
for (( i=1; i<=$n; i++ ))
do
save_dir="${file_dir}item${i}/"
./subscript.sh "${save_dir}" ?$x $y
done
有點不好懂是吧,我會錄個視頻的