★我要吧★

 找回密码
 注册[Register]
搜索
qq空间相册密码查看为什么登陆后需要激活无法注册?

windows下如何写自动批处理命令调用R、Matlab、mysql等各种软件进行数据处理

[复制链接]
发表于 2012-3-14 21:10:38 | 显示全部楼层 |阅读模式
在处理数据的过程中,每个软件有各自的特点,比如有的时候使用perl处理文本,有的时候使用matlab做点矩阵运算,有的时候用R做点统计分析,那么自然有人会想,如何制作一个自动批处理文件,让他具有智能的效果,即:自动调用perl处理完文本,自动调用matlab处理矩阵,自动调用R处理统计分析问题,一次执行完毕呢?下面我们看看各种语言的批处理命令文件如何制作。



windows下使用自动批处理命令可以自动调用各个软件完成你的工作,下绍几种为例,其他的都大同小异:

1、R语言

R语言中C:\Program Files\R\R-2.13.0\bin中有个Rscript.exe,这是脚本运行的程序。

(1)将你的R语言程序写入一个叫mywork.r的文件中,文件名字自己随便起就行。

(2)建立个Rcmd.txt文件,里面写入代码 :

cd C:\Program Files\R\R-2.13.0\bin

Rscript.exe mywork.r

然后,将Rcmd.txt修改扩展名为Rcmd.bat然后双击就ok了,自动运行。



2、Matlab

Matlab目录C:\MATLAB7\bin\win32中有个matlab.exe,可以利用这个程序制作脚本。

(1)将你的matlab语句程序写入一个叫mywork.m的文件中,文件名字自己随便起就行。

(2)建立个mysqlcmd.txt文件,里面写入代码 :

cd C:\MATLAB7\bin\win32

start /wait /min matlab.exe -nosplash -automation -sd "C:\MATLAB7\bin\win32" -logfile "result.log" -r "run('C:\MATLAB7\bin\win32\mywork.m')"

然后,将matlabcmd.txt修改扩展名为matlabcmd.bat然后双击就运行了。

结果会生成一个result.log的文件,这个文件内容和matlab命令行运行窗口的结果一样。



3、mySQL

mysql中C:\mysql\bin中有个mysql.exe,可以利用这个程序制作脚本。

(1)将你的SQL语言程序写入一个叫mywork.sql的文件中,文件名字自己随便起就行。

(2)建立个mysqlcmd.txt文件,里面写入代码 :

cd C:\mysql\bin

mysql.exe -uroot -p111111 <mywork.sql

然后,将mysqlcmd.txt修改扩展名为mysqlcmd.bat然后双击就运行了。



4、perl

perl语言中C:\Perl\bin中有个perl.exe,可以利用这个程序制作脚本。

(1)将你的perl语言程序写入一个叫mywork.pl的文件中,文件名字自己随便起就行。

(2)建立个perlcmd.txt文件,里面写入代码 :

cd C:\mysql\bin

perl perlcmd.txt

然后,将perlcmd.txt修改扩展名为perlcmd.bat然后双击就运行了。



总结:

(1)所有上述的内容适当的安排好,可以写到一个批处理命令里面,这样的话,你利用各个软件的优点写完所有的程序然后点击批处理命令,你就可以去打游戏了,打完游戏看看你的结果出来没有。

(2)其他一些如python,jaya等等都可以以种方式写批处理命令。

(3)上述软件基本都在安装包的bin目录下面,设置好路径,然后调用即可。还可以直接配置好环境变量,然后在任何一个目录下面调用这些程序就ok了。
发表于 2012-3-14 21:33:02 | 显示全部楼层
来学习了哦
回复 支持 反对

使用道具 举报

发表于 2012-3-14 23:30:33 | 显示全部楼层
今天又学到不少知识
回复 支持 反对

使用道具 举报

发表于 2012-3-15 17:36:01 | 显示全部楼层
貌似不懂??
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

QQ|手机版|小黑屋|☆我要吧☆ ( 豫ICP备13016831号-1 )

GMT+8, 2024-11-24 04:59 , Processed in 0.066578 second(s), 19 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

快速回复 返回顶部 返回列表