scandir, a better directory iterator and faster os.walk()
scandir() is a generator version of os.listdir() that returns an iterator
over files in a directory, and also exposes the extra information most
operating systems provide while iterating files in a directory (such as
type and stat information).
This module also includes a version of os.walk() that uses scandir()
to speed it up significantly.
NOTE: If you're using Python version 3.5+, os.scandir() and the speed
improvements to os.walk() are already available in the standard library.
Fanout and fanterm are two utilities that allow you to run commands on
multiple machines. The difference is that fanout only runs non-interactive
commands (like dd, cat, adduser, uname -a, etc.) and pipelines built of
these. The output is collected into a single display that can be viewed by
less or redirected to a file.
Fanterm, on the other hand, allows you to run interactive text mode
commands on multiple machines at the same time. Your keystrokes are sent
to a shell or application running on each of the target systems. The
output from each system is shown in a separate xterm.
Fcron is a scheduler. It aims at replacing Vixie Cron, so it
implements most of its functionalities. But contrary to Vixie Cron,
fcron does not need your system to be up 7 days a week, 24 hours a
day : it also works well with systems which are not running neither
all the time nor regularly (contrary to anacrontab). To do so, fcron
allows you to use the standard mode in which you tell it to execute
one command at a given date and hour and to make it run a command
according to its time of execution, which is normally the same as
system up time.
This is the stable release.
httplog is a replacement for Apache's 'rotatelogs' and Andrew Ford's
'chronolog'. It allows you to specify a logfile using strftime paramaters in
the filename to act as a template. This means that the logs in your logfiles
will also be sorted according to the filename. For example, if you specify a
logfile of /var/log/http%Y%m%d.log, a new log file would be generated each day,
with content for only that one day. It also supports compression of logfiles
using gzip, and many other useful functions.
LMon is a package for near real-time monitoring of logs, sending email alerts
upon known (rule hits) or unknown data (rule misses). It features buffering of
multiple rule hits within a given interval, cap at a given maximum number of
lines, wait for a given interval before sending next alert, and auto- discovery
of log rotation. It can be run from the command line without configuration, or
be controlled from a central configuration file with multiple instances
monitoring different log files/sending alerts to different people.
most is a pager (like less) that displays, one windowful at a time,
the contents of a file on a terminal. It pauses after each windowful
and prints the following on the window status line: the screen, the
file name, current line number, and the percentage of the file so far
displayed.
In addition to displaying ordinary text files, most can also display
binary files as well as files with arbitrary ascii characters. As an
option, autosensing of binary files can be disabled (via the -k
option), thereby allowing one to browse files encoded in a different
language (Japanese, Korean, Chinese, etc).
FTP: ftp://ftp.jedsoft.org/pub/davis/most
pacman is a utility which manages software packages in Linux. It
uses simple compressed files as a package format, and maintains a
text-based package database (more of a hierarchy), just in case
some hand tweaking is necessary.
pacman does not strive to "do everything." It will add, remove and
upgrade packages in the system, and it will allow you to query the
package database for installed packages, files and owners. It also
attempts to handle dependencies automatically and can download
packages from a remote server.
worldtools consists of 3 simple scripts:
- whereintheworld displays the great lines behind the build logs of a
buildworld. It shows at which step the build is at, and which module
is currently being built.
- buildit runs a command, time(1)s it, logs the output and optionally
sends a notification to the user by email when finished.
- upgrade is a wrapper for buildit, whereintheworld, cvsup and make
buildworld. It is a convenient series of shell commands that will
upgrade your FreeBSD system.
See the README file for more details.
sslserver and sslclient are command-line tools for building SSL
client-server applications. They conform to the UNIX Client-Server
Program Interface, UCSPI.
sslserver listens for connections, and runs a program for each
connection it accepts. The program environment includes variables that
hold the local and remote host names, IP addresses, and port numbers.
sslserver offers a concurrency limit on acceptance of new connections,
and selective handling of connections based on client identity.
sslclient requests a connection to a TCP socket, and runs a program. The
program environment includes the same variables as for sslserver.
The ht://Dig system is a complete world wide web indexing and
searching system for a domain or intranet. This system is not meant
to replace the need for powerful internet-wide search systems like
Yahoo! or Google. Instead it is meant to cover the needs for a
single company, campus, or even a sub section of a web site.
As opposed to some WAIS-based or web-server based search engines,
ht://Dig can span many web servers as long as they all understand
the HTTP 1.0 protocol.