shell和matlab之间的参数传递
test.m
###
attName = att;
attName = [attName,'/'];
dataType = [dt,'/'];
data_path = ['/media/ntfs-1/',dataType,attName,'train_valid_test.mat'];
struc_path = [num2str(struc1),'-',num2str(struc2),'-',num2str(struc3)];
disp(data_path);
disp(stru_path);
###
run.sh
###
hls1=750
hls2=1000
hls3=750
attName='b'
dataType='9box_max'
/usr/local/MATLAB/R2011a/bin/matlab -nodesktop -nosplash -r "struc1=$hls1,struc2=$hls2,struc3=$hls3,att='$attName',dt='$dataType';test.m;quit"
###
运行run.sh 结果为:
/media/ntfs-1/9box_max/b/train_valid.test.mat
750-1000-750
说明:
1. 由上面可以看到,shell和matlab之间的参数传递比shell与Python之间的参数传递要简单,在matlab程序中直接进行使用即可,不需要另外加载或者编写接口。比如在test.m中“attName=att;”,这里的att就是shell脚本中的"att='$attName'"。
2. 在shell中调用matlab传递参数时,若参数是字符串类型,则应该在参数值外面加上引号,比如上面的att='$attName',但是调用Python的时候则没有这个规定。
3. 上面的run.sh 中的“-nodesktop -nosplash -r”指的是不打开matlab图形界面;“-r”后面的引号内容分为三块,每一块之间用分号“;”隔开。第一块是具体的参数,第二块就是要调用的matlab程序,第三块“quit”是指运行完matlab程序的时候,跳出matlab程序,否则shell命令还留在matlab的命令行中。
shell和matlab之间的参数传递的更多相关文章
- shell和python之间的参数传递
我们在使用shell调用其他语言的程序的时候,希望能够便捷的从shell中输入参数,然后由目标程序接收参数并运行,这样就省去了每次需要在原程序进行修改带来的麻烦,这里介绍一下如何从shell中 ...
- 萧墙HTML5手机发展之路(53)——jQueryMobile页面之间的参数传递
基于单个页面模板HTTP通过路POST和GET请求传递参数.在多页模板,并且不需要server沟通,通常有三种方式在多页模板来实现页面之间的参数传递. 1.GET道路:上一页页生成参数并传递到下一个页 ...
- shell重温---基础篇(参数传递&echo命令)
经过前两天的学习,关于shell的基础算是知道的一般般啦,最起码不算是小白了(纯属意淫).今天就来点干货哈. 首先是运行shell脚本时的参数传递.脚本内获取参数的格式为$n.n代表了一个数字,例 ...
- shell中命令之间数据的传递
1.管道 "|" ls | cat -n > out.txt 2. 子shell 2.1 子shell 说明 在shell脚本中可以用()操作符可以定义一个子shell #/ ...
- 【App FrameWork】页面之间的参数传递
若应用中有多个页面,这时2个页面之间可能需要进行参数传递.那么如何来实现呢? 首先想到的就是URL参数传递的方式,如:在panel里设置属性 data-defer="Pages/Shake. ...
- [C#参考]主线程和子线程之间的参数传递
几个进程在大多数情况下要包含很多的子线程,那么他们之间免不了的要互相传递很多的参数,那么参数怎么传递的呢? 主线程向子线程传递参数的方法 第一种方法:Thraed类有一个带参数的委托类型的重载形式,这 ...
- Vue中组件化编码使用、实现组件之间的参数传递(实战练习二)
上一章节实现的是静态页面的设计.这一章节实现将数据抽取出来.通过组件间参数的传递来实现 上一章节链接地址:https://blog.csdn.net/weixin_43304253/article/d ...
- C#与MATLAB之间传递参数
本文转载自http://www.cr173.com/html/10249_1.html MWNumericArray是MWArray和c#中数据的中间类,怎么用?怎样在C参数? a.double型.i ...
- jsp与servlet之间的参数传递【转】
JSP与 servlet之间的传值有两种情况:JSP -> servlet, servlet -> JSP. 通过对象 request和 session (不考虑 application) ...
随机推荐
- 微信小程序之wx.getLocation再次授权问题解决
首先,在page外定义一个公共函数用于发送获取位置的请求 var getLocation = function (that) { wx.getLocation({ type: 'wgs84', suc ...
- Python中常见的异常处理
异常和错误 part1:程序中难免出现错误,而错误分成两种 1. 语法错误(这种错误,根本过不了Python解释器的语法检测,必须在程序执行前就改正) # 语法错误示范一 if # 语法错误示范二 d ...
- leetcode583
public class Solution { public int MinDistance(string word1, string word2) { , word2.Length + ]; ; i ...
- 教你实现GPUImage - OpenGL渲染原理<转>
http://www.open-open.com/lib/view/open1483943550976.html
- Winform绑定图片的三种方式
1.绝对路径: this.pictureBox2.Image=Image.FromFile("D:\\001.jpg"); 2.相对路径: Application.StartupP ...
- uboot重定位代码分析(转)
概述 重定位(relocate)代码将BootLoader自身由Flash复制到SDRAM,以便跳转到SDRAM执行.之所以需要进行重定位是因为在Flash中执行速度比较慢,而系统复位后总是从0x00 ...
- Xcode迁移工程常见问题
[Xcode迁移工程常见问题] 1.Header Search Paths (HEADER_SEARCH_PATHS) 是否设置正确.在Search Paths group下. 2.Framework ...
- 【bzoj3670】[Noi2014]动物园
3670: [Noi2014]动物园 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 2080 Solved: 1107[Submit][Status ...
- 四.python数据类型,语句
Python基础 阅读: 120476 Python是一种计算机编程语言.计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不同的语境下有不同的理解,而计算机要根据编程语言执行 ...
- Ros学习——移动机器人Ros导航详解及源码解析
1 执行过程 1.运行仿真机器人fake_turtlebot.launch:加载机器人模型——启动机器人仿真器——发布机器人状态 2.运行amcl节点fake_amcl.launch:加载地图节点ma ...