This is a small utility for checking and repairing the qmail queue
structure. It will fix uid/gid settings and permissions. It will
rename the message files to match their inodes. It will even create
directories and files that don't exist that should be there (you can
even create a queue from scratch). It will also print warnings for
any files it finds that should not exist.
Bar is a simple tool to copy a stream of data and print a display for the user
on stderr showing (a) the ammount of data passed, (b) the throughput of the
data transfer, and (c) the transfer time, or, if the total size of the data
stream is known, the estimated time remaining, what percentage of the data
transfer has been completed, and a progress bar.
FreeBSD::Ports and FreeBSD::Ports::Port are modules for parsing
FreeBSD's Ports INDEX file and selecting ports that match certain
criteria.
For example, you might want to list ports maintained by tom@FreeBSD.org
sorted alphabetically:
my $ports = tie my %port, 'FreeBSD::Ports', '/usr/ports/INDEX';
$ports->maintainer('tom@FreeBSD.org');
$ports->sort('alpha');
foreach my $p (keys %port) {
print $p->as_ascii,"\n";
}
Fwipe is a secure file erasing program. fwipe0, which actually erases
your files, is immune to filenames containing spaces, carriage returns,
dashes, or any other special characters. You can use it in place of rm
in cron jobs, together with "find ... -print0". The output of fwipe0 is
specially designed to be parsed easily by machine, so it can be embedded
in other applications which need secure file erasure.
This is an object oriented perl interface to the FreeBSD jail subsystem.
Here's a replica of the 'jls' utility in just a few lines of perl:
use BSD::Jail::Object 'jids';
print " JID IP Address Hostname Path\n";
printf "%6d %-15.15s %-29.29s %.74s\n",
$_->jid, $_->ip, $_->hostname, $_->path foreach jids( instantiate => 1 );
And here's 'jexec':
my $j = BSD::Jail::Object->new( $ARGV[0] ) or die $@;
$j->attach && chdir('/') && exec $ARGV[1] or exit;
For more info please use 'perldoc' on the module.
SyslogScan contains routines to parse system logs. The package
includes a sample application, read_mail_log.pl, which can print out
various statistics about mail sent and received.
SyslogScan::SyslogLine encapsulates generic log lines in syslog files.
SyslogScan::Delivery encapsulates a delivery of mail from one user to
a list of users.
SyslogScan::Summary generates reports of how much mail each user has
sent and received.
Delivery and Summary information can be efficiently persisted to a
file and recovered for later analysis.
This tool removes blocks of 0x00 from files by replacing them with
phantomblocks. That way, a file uses less diskspace while its contents
hasn't changed at all!
BEWARE: after copying these files with tar, cp, cpio or any other tool,
the phantomblocks have been replaced with 0x00-blocks again!
EXAMPLE:
find / -type f -print | xargs -n 1 phantom -r -i
This would go trough the whole harddisk, scan all files and generate
0x00-blocks where necessary.
An integrated solution for XML-based publishing in print and web.
It is specifically targeted at producing technical documentation
in the field of computer science.
Documents are written in an XML-based markup language and translated
to different formats with XSL-transformations. At this time, eCromedos
supports the target formats XHTML and LATEX. Where LATEX output can be
further processed into high-quality printable formats by use of the
TEX typesetting system (http://www.ctan.org).
Set of modules:
* Pod::Parser - base class for creating POD filters and translators
* Pod::Select - extract selected sections of POD from input
* Pod::Usage - print a usage message from embedded pod documentation
* Pod::PlainText - convert POD data to formatted ASCII text
* Pod::InputObjects - objects representing POD input paragraphs, commands, etc.
* Pod::Checker - check pod documents for syntax errors
* Pod::ParseUtils - helpers for POD parsing and conversion
* Pod::Find - find POD documents in directory trees
This module parses a DTD file and creates a data structure containing
info about all tags, their allowed parameters, children, parents,
optionality etc. etc. etc.
Note: Parse a DTD you need and print the result to a file using
Data::Dumper. The datastructure should be selfevident.
Note: The module should be able to parse just about anything, but it intentional
y looses some information.
Jenda@Krynicky.cz
http://Jenda.Krynicky.cz