Beyond Compare强大的脚本功能

Beyond Compare是开发兄弟用得非常多的工具,不过相信好多兄弟其实用了这么些的年都没用过bc很强大的脚本功能。bc提供了一个脚本可以用来做自动化任务, bc的脚本也是一些简单的命令列表,能够用来自动控制处理文件的操作以及生成执行报告。bc脚本功能运行可以不需要我们通常见到的bc用户UI,不过脚本运行过程可能会弹出一些需要确认的提示。bc脚本在AT或者是做一些比对合入的时候非常有用。关于bc一些高级的用法和详细介绍,有兴趣的同学可以参考原文链接。

一个非常简单的删除指定目录下所有文件的bc脚本例子:参考其他更多的命令,请参考的附件罗列的命令
load “C:\My Folder”
select all
delete all

执行的命令行,例如:
windows BCompare.exe @”C:\My Script.txt”
linux/unix bcompare @”/My Script”

脚本实际上是做一个隐藏的文件夹操作会话: 包括选择文件操作,”display”可以用来过滤指定属性的文件,”expanded”可以递归进入展开文件夹,任何目录名称都可以作为参数,可以是你自己本地上的文件夹,也可以是网络上或者是ftp上的文件夹,甚至一些象.ZIP, .CAB压缩包之类的文件,或者是bc的快照文件都支持。

脚本是逐行解析执行的,脚本对内容是大小写不敏感的(不知道linux/unix上这里是咋支持的),空行和#符号注释是会被忽略的掉的。参数之间是以空格作为分隔的。如果是参数中带有空格就需要用双引号了(linux/unix默认就这么玩的),支持在一些超长的行尾用&符号换行(和多数脚本中的\默认换行符不一样)。

另外,命令行参数和环境变量可以在调用的时候传入脚本,命令行变量用%1-%9这种格式,脚本和调用的命令都不包括在这个参数个数里头。
例如:

命令行:
BCompare.exe @”My Script.txt” “My Session”

脚本中读取参数
load “%1”

环境变量直接就用两个百分号闭合的形式%TMP%,而且是大小写敏感的。
例如:
load “%TMP%”
select all
delete all

这里有几个动态的变量可以嵌入bc的脚本中,%date%就是获取当前日期的,格式是yyyy-mm-dd, %time%是获取当前时间的,格式依赖于你的地区设置,%fn_time%输出时间格式是hh-mm-ss,这些都可以用来作为时间后缀给文件命名。

原文:http://www.scootersoftware.com/help/index.html?scripts_overview.html
Scripting Reference

网友评论comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注

  1. Guang说道:

    bc脚本的优势的是啥哦?在windows里直接用cmd,在linux下就用shell。

    • ibusybox说道:

      bc还是很有用处的,UI上能做的操作都可以用bc脚本 例如比对两个目录中文件内容更新差异,比对时间点后差异 之类的操作

  2. 代码疯子说道:

    一般直接GUI操作,beyond compare貌似用过,不过平时用ultra compare比比hex

  3. 荒野无灯说道:

    Beyond Compare确实是神器,一直有在用

Copyright © 2012-2017 YUNWEIPAI.COM - 运维派 - 粤ICP备14090526号-3
扫二维码
扫二维码
返回顶部