图像缩略图

deploypcode(source_dir,target_dir,varargin)

版本1.10.0.0(11.4 kB) Sven.
deploypcode递归地搜索.m文件的目录,使用.m帮助创建加密的.p文件

1下载

更新2015年1月8日

查看版本历史记录

查看许可证

编辑注意:此文件被选为Matlab Central挑选本周

此条目非常适合那些有项目需要部署到P文件的人,但他们希望为所有部署的文件保留帮助内容。
-
DeployPcode递归地在给定文件夹中创建M-Files的P代码版本
deploypcode(源,目标)将递归地搜索所有.m文件的源文件夹
使用下面的默认选项将其作为p-files部署到目标文件夹。

deploypcode(...,'propertyname',值,'propertyname',值,...)使用以下选项
部署P码时:

'recurse' - 当真实(默认)将递归地从源文件夹重新递送P代码。

“Ignorstrings” - 字符串或单元格列表中的字符串数组以忽略。正则表达式
使用语法。

'ignorevn' - 忽略“.svn”目录的其他真/假选项。相当于
添加{'^ \。svn $'}“Ignorstrings”。为方便起见默认为true。

“includhelp” - matlab的pcode()删除包括帮助部分(包括帮助部分)的所有评论
运行时的文件。将此选项设置为true(默认)将导出
其他.m文件仅包含文件的帮助内容
部署。这意味着MyFunction.M将部署到MyFunction.p,
但是,请调用“帮助MyFunction”仍将返回帮助文本。

'updateOnly' - 当True时,只有在尚未创建目的地P-Files时
存在或比被编码的M文件较大。默认为false。

“copyDirectrings” - 字符串或单元格列表中的字符串数组,用于直接复制到目标
文件夹没有加密。使用正则表达式语法。

'copyfigfiles' - 直接复制“.fig”文件的其他真/假选项。相当于
将{'\ .fig $'}添加到“CopyDirectStrings”。为方便起见默认为true。
'copyDllfiles' - 将“.dll”文件直接复制“.dll”文件的其他真/假选项。相当于
将{'\ .dll $'}添加到“copyDirectrings”。为方便起见默认为true。
'copymexfiles' - 直接复制MEX文件的其他真/假选项。默认为true
为了方便。

'flattenfiletree' - 当真实(默认)时,常规m文件只开为p-files
最初提供的目标文件夹(而不是在任何子目录下)。
当此选项设置为false时,源下的文件结构
目录将在目标上复制。

例子:
deploypcode('c:\ sven \ compancebla_sahm \ matlab \ sahm \','u:\ sahm \ matlab \ _includes \ sahm','updateonly',true)

由Sven Holcombe撰写2011年10月

作者注意:
虽然我一般反对不必要的.m文件加密(这将是针对这个文件交换的精神,一个),我需要一个诸如此之外的工具,以便认为其他人可能需要相同的方法。

引用

Sven(2021)。deploypcode(source_dir,target_dir,varargin)(//www.tatmou.com/matlabcentral/fileexchange/26919-deploypcode-source_dir-target_dir-varargin),matlab中央文件交换。检索到

评论和评级(18.

Timothy Hattrell.

伟大的工具。不适用于字符串的输入,这花了一分钟才能弄清楚,但一旦喂食传统的Char数组。

罗兰

漂亮的工具,帮助了我很多!

Michele Oro Nobili.

马丁恩登

非常感谢这个伟大的工具。

阿尔弗雷多

这正是我正在寻找的!
谢谢Sven。
我有一个问题,开发人员将在生产机器上去生产机并在正式发布后“微调”代码。
仅使用函数部署PCODE将消除该问题。
谢谢!!

亚历山大布杜斯基

Cao Tri.

皮特

优秀的。当Flattenfiletree == false时,它就像一个魅力。良好的工作,非常感谢!

mayuresh.

非常好的脚本。优异的适用性。

joachim

andrea vaccaro

忘了评价......

Sven.

谢谢Adrea,很高兴它帮助了你,非常感谢更新。我会在下次更新中查看并将它们纳入其中。

andrea vaccaro

精彩的工作,救了我很多时间!

我注意到它会窒息没有句子上正确的文件。我修改了代码只需跳过这些文件并发出警告。此外,我还添加了复制DLL文件和MEX文件的选项。我知道它是一个差别,因为我可以使用'copydirectrings'选项,但我发现可能很常见,可以复制这些文件。以下是对应于我的修改的补丁:

http://andreavaccaro.org/files/deploypcode.patch.

如果您想将此修补程序包含在代码中,请随时修改您的愿望

欢呼,再次感谢您的代码

Sven.

@DBS:很高兴这是有帮助的。我刚刚上传了一个新版本,允许“CopyDirectrings”作为参数,在那里您可以在其中设置要直接从源复制到目标的文件名(通过regexp)。
这是你在寻找的吗?

DBS.

伟大的功能sven,救了我很多时间!但如果它转移了其他可选文件,那将是完美的。例如,在我的情况下,我需要从源部署一些.txt,.pdf和.xls。同时,我会尝试在代码中插入它。干杯!

马修

做得好。这是非常好的代码。很明显,您喜欢编码此功能。评论像“棘手的小函数......”和“偷偷摸摸地强迫......”是宝石:)

Sven.

@GREG:当然,我上传了一个新版本,允许FlattentReefile = false选项生效。

格雷格默罗特

您可以实现关闭Flattenfiletree的选项吗?

顺便说一句伟大的剧本。

Matlab释放兼容性
用R2011B创建
兼容任何释放
平台兼容性
视窗 苹果系统 Linux.
致谢

灵感来自:genpath_exclude.

启发:部署PCODED MATLAB文件

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!