The other suggestions are great for capturing running of the program(s).Further to these suggestions you can store a timestamp before running the program and then at the end find all files newer than that timestamp to display/count the output. For the input/output files an approach I've seen used in other languages is inline comments then generated into documentation. JavaDoc and Perl's POD are examples. SASUnit does this to produce documentation and reports. I believe they used to use DoxyGen however have switched to an internal tool. SASUnit can be found at http://sasunit.sourceforge.net/ but their report demo isn't working so download the 1.6 release and open this file for an example: example/doc/sasunit/en/rep/pgm_basedatasets.html. Code: /**
\file
\ingroup SASUNIT_EXAMPLES_PGM
\brief Create base datasets for a database
\version \$Revision: 451 $
\author \$Author: klandwich $
\date \$Date: 2015-09-07 08:49:43 +0200 (Mo, 07 Sep 2015) $
\sa For further information please refer to https://sourceforge.net/p/sasunit/wiki/User%27s%20Guide/
Here you can find the SASUnit documentation, release notes and license information.
\sa \$HeadURL: https://svn.code.sf.net/p/sasunit/code/tags/v1.6/example/saspgm/basedatasets.sas $
\copyright This file is part of SASUnit, the Unit testing framework for SAS(R) programs.
For copyright information and terms of usage under the GPL license see included file readme.txt
or https://sourceforge.net/p/sasunit/wiki/readme/.
*/ /** \cond */ Report:
... View more