统计批处理脚本的执行次数
Posted
技术标签:
【中文标题】统计批处理脚本的执行次数【英文标题】:Count number of executions of batch-script 【发布时间】:2011-02-21 09:50:06 【问题描述】:这是我的问题,我有一个无法修改的批处理脚本(我们称之为 foo),我想计算该脚本每天执行多少次 - 以跟踪该数据.
最好将执行次数与日期和退出代码一起写入某种日志文件。
所以我的问题是这是否可能,在这种情况下 - 怎么做?创建一个在后台运行的批处理脚本/东西,并将每次执行的 foo 写入日志。
(我知道如果我可以修改 foo 会很容易,但我不能。另外,一切都在 WinXP 机器上运行。)
【问题讨论】:
您在这里不劳而获。修改批处理脚本。 【参考方案1】:您可以编写一个包装脚本来执行日志记录并调用现有脚本。然后使用包装器代替原始脚本
【讨论】:
遗憾的是没有。我正在寻找不会改变当前计算机设置的任何东西。包装器对于一个项目来说有点大,因为必须在整个环境中更改调用。【参考方案2】:考虑编写一个询问任务管理器的程序。
见http://www.netomatix.com/ProcDiagnostics.aspx
例如,您可以编写一个在计时器上运行的简单控制台应用程序;它每 5 秒检查一次您的 foo 应用程序进程是否存在。如果发现是,则假定 find 是应用程序的开始时间;如果没有找到,则假定应用程序现已关闭并记录该信息。无论如何,它不会精确到秒,但会给你一个粗略的近似值,了解事物何时运行和关闭。
【讨论】:
这听起来有点过头了,真的没有更简单的方法吗? 如果你不能修改现有的应用程序,那么恐怕我真的看不到另一种方法。在控制台应用程序中运行一个计时器来检查正在执行的应用程序实际上是了解您的 foo 应用程序何时以及运行了多少次的唯一可靠方法。如果您的 foo 应用程序已经在进行任何类型的日志记录,那么您可能会以这种方式对事物进行解密,但假设它没有记录任何内容(根本没有记录任何对数据库的输入?)那么进程监控就是要走的路。 @mattssok:将您的批处理脚本视为任意应用程序。您可以跟踪 Word.exe 或 Calc.exe 的执行次数吗?全部都是一样。如果您无法控制文件(无法修改源代码、无法重命名并替换为您自己的包装脚本),那么您将别无选择。【参考方案3】:您也许可以配置进程监视器 http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx 获取您需要的信息
【讨论】:
以上是关于统计批处理脚本的执行次数的主要内容,如果未能解决你的问题,请参考以下文章