+++ /dev/null
-<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type"
- content="text/html; charset=iso-8859-1">
- <meta name="Author" content="Fred T. Hamster">
- <meta name="generator"
- content="Mozilla/5.0 (X11; U; Linux i686; en-US) [Mozilla]">
- <meta name="Description"
- content="Open Source Perl for Your Perusement">
- <meta name="KeyWords"
- content="reusable, open source, perl, shell, script, recursive, diff, snarf, yeti, free, source code, example, filename, snarfer">
- <title>Feisty Meow Concerns Bash Scripts</title>
- <meta content="Fred T. Hamster" name="author">
- <meta
- content="Assorted scripts for enhancing the bash environment and tools that automate fairly common actions."
- name="description">
-</head>
-<body
- style="background-image: url(pics/home_front_b_5.jpg); background-color: rgb(0, 0, 0); color: rgb(255, 255, 153);"
- alink="#ffcc00" link="#66ff99" vlink="#00cc00">
-<h3> </h3>
-<center>
-<table bgcolor="#330000" border="4" cellpadding="0" cellspacing="0"
- cols="1" width="92%">
- <tbody>
- <tr>
- <td>
- <center>
- <h1><a href="http://feistymeow.org/">Feisty Meow Concerns</a>Open Source Bash Scripts</h1>
- <h2>GPL-Licensed Bash Code<br>
- </h2>
- </center>
- <center>Contributed by Chris Koeritz (<a
- href="mailto:%20koeritz@gruntose.com">Koeritz@Gruntose.COM</a>) <br>
-See the <a href="http://www.gruntose.com/Info/GNU/GPL.html">GNU Public
-License</a> for details of licensing.<span style="font-style: italic;"></span><br>
- </center>
- <h4>Caveats: please refer to the <a href="perl_tools.html">Perl
-Scripts page</a> which shares the same constraints as these Bash
-Scripts do.<br>
- </h4>
- <span style="color: rgb(255, 255, 204);">Direct Cognition</span>:
-View the scripts directory itself rather than navigating with the links
-below: <a href=".">scripts</a>.
- <ol>
- </ol>
- </td>
- </tr>
- </tbody>
-</table>
-</center>
-<h3> </h3>
-<center>
-<table bgcolor="#330000" border="4" cellpadding="0" cellspacing="0"
- cols="1" width="92%">
- <tbody>
- <tr>
- <td>
- <h2>Assorted Bash Script Files</h2>
- <blockquote>
- <h3> <a href="uhh.sh">uhh.sh</a></h3>
- <blockquote>This documentation page isn't quite ready yet.<br>
-In fact, this file is still in its very first few iterations and is
-pretty
-limited so far...<br>
- </blockquote>
- <h3> </h3>
- <h3><a href="../database/movie_seeker.sh">movie_seeker.sh</a>
-/ <a href="../database/movie_stripper.sh">movie_stripper.sh</a>
-/ <a href="../database/show_stripper.sh">show_stripper.sh</a><br>
- </h3>
- <div style="margin-left: 40px;">Some manipulation methods for a
-particular type of movie and TV show database. These expect a db
-in the form of a CSV file with three fields per line: (1) index number,
-(2) show or movie name and (3) show episode title. The third
-field is defined as blank for movies. The movie_seeker finds a
-given movie (or pattern) in the database. The movie_stripper
-pulls out all the unique movie or show names in the database. The
-show_stripper pulls out the episode names for a particular show name
-(or pattern).<br>
- </div>
- <h3><a href="../database/call_movie_seeker.sh">call_movie_seeker.sh</a>
-/ <a href="../database/call_movie_stripper.sh">call_movie_stripper.sh</a>
-/ <a href="../database/call_show_stripper.sh">call_show_stripper.sh</a><br>
- </h3>
- <div style="margin-left: 40px;">These are CGI correspondents to
-the above movie database searches. They're used on the Gruntose
-web site.<br>
- </div>
- <br>
- </blockquote>
- </td>
- </tr>
- </tbody>
-</table>
-</center>
-<br>
-<br>
-<br>
-<br>
-</body>
-</html>
+++ /dev/null
-<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type"
- content="text/html; charset=iso-8859-1">
- <meta name="Author" content="Fred T. Hamster">
- <meta name="generator"
- content="Mozilla/5.0 (X11; U; Linux i686; en-US) [Mozilla]">
- <meta name="Description"
- content="Open Source Perl for Your Perusement">
- <meta name="KeyWords"
- content="reusable, open source, perl, shell, script, recursive, diff, snarf, yeti, free, source code, example, filename, snarfer">
- <title>Feisty Meow Concerns Perl Scripts</title>
- <meta content="Fred T. Hamster" name="author">
- <meta
- content="Scripts for backing up hierarchies, generating documents from other documents, etc etc."
- name="description">
-</head>
-<body
- style="background-image: url(pics/celtic_destiny14.jpg); background-color: rgb(0, 0, 0); color: rgb(255, 255, 153);"
- alink="#ffcc00" link="#66ff99" vlink="#00cc00">
-<h3> </h3>
-<center>
-<table bgcolor="#330000" border="4" cellpadding="0" cellspacing="0"
- cols="1" width="92%">
- <tbody>
- <tr>
- <td>
- <center>
- <h1><a href="http://feistymeow.org/">Feisty Meow Concerns Codebase</a> Open Source Perl
-Scripts</h1>
- <h2>Some Hopefully Useful GPL-Licensed Perl Code<br>
- </h2>
- </center>
- <center>Contributed by Chris Koeritz (<a
- href="mailto:%20koeritz@gruntose.com">Koeritz@Gruntose.COM</a>) <br>
-See the <a href="http://www.gruntose.com/Info/GNU/GPL.html">GNU Public
-License</a> for details of licensing.<span style="font-style: italic;"></span><br>
- </center>
- <h4>Caveats:</h4>
- <ol>
- <li>No warranty, express, implied or imagined, is offered for
-these files. If you destroy your life by running one of them, I
-will have sympathy, but that's about it.</li>
- <li>Some of these shell scripts depend on environment variables.
-The most frequent case of this is FEISTY_MEOW_APEX, which should point to the
-top-level
-directory where the Feisty Meow scripts are stored on your
-machine. This variable is set by default when the scripts are in
-the ~/feisty_meow folder. Consult your operating
-system documentation if you are
-unfamiliar with the concept or management of environment variables.</li>
- <li>These files are provided as possibly useful shell scripts
-rather than as full-fledged reusable and object oriented components.</li>
- <li>Improvements and contributions are gladly accepted.
-They will be processed as fast as our schedule permits. Please
-send any changes to the Gruntose Curator at <a
- href="mailto:%20fred@gruntose.com">fred@gruntose.com</a> .</li>
- <li>These files are mostly portable between Unix and the
-various Windoze OSes, but in many cases you may want to fix the
-defaults or path names to make them more suitable for your own needs.</li>
- <li>Some of the scripts invoke external programs that are
-available for most Unixes. For Windoze users, a set of GNU Unix
-utilities is available at "<a href="http://www.mingw.org/">http://www.mingw.org/</a>".</li>
- <li>An alternative, but not recommended, GNU suite is
-at "<a href="http://www.cygwin.com/">http://www.cygwin.com/</a>".</li>
- <li><span style="color: rgb(255, 255, 204);">Direct Cognition</span>:
-View the scripts directory itself rather than navigating with the links
-below: <a href=".">scripts</a>.</li>
- </ol>
- </td>
- </tr>
- </tbody>
-</table>
-</center>
-<h3> </h3>
-<center>
-<table bgcolor="#330000" border="4" cellpadding="0" cellspacing="0"
- cols="1" width="92%">
- <tbody>
- <tr>
- <td>
- <h2>Library Files<br>
- </h2>
- <blockquote>
- <h3><a href="../text/diff_lib.pl">diff_lib.pl</a></h3>
- <blockquote>The "differ" utilities can be used to compare two
-directories of text or binary files against each other. The two
-directories are presumably close in contents. This can be useful
-when one is revising a set of files and wants to synchronize an older
-copy against a newer version. Support for "<a href="#differ">differ.pl</a>"
-is provided
-here.</blockquote>
- <h3> <a name="filename helper"></a><a
- href="../files/filename_helper.pl">filename_helper.pl</a></h3>
- <blockquote>Contains a handy set of utilities for manipulating
-filenames. These can help to make perl scripts portable across
-the two well-known types of filename separators ('/' and '\').
-They also provide support for ripping up filenames into their
-components.</blockquote>
- <h3> <a href="../core/inc_num.pl">inc_num.pl</a></h3>
- <blockquote>This is a simple utility that manages a file with a
-number in it. This is somewhat more useful than it sounds.
-Functions are provided to get the current number and to change the
-number.</blockquote>
- <h3> </h3>
- <h3> <a href="../archival/shared_snarfer.pl">shared_snarfer.pl</a></h3>
- <blockquote>This library supports the "snarf" utilities.
-The
-utilities manipulate archive files with the ".snarf" extension.
-These
-packed
-snarf files are compressed chunks of directory hierarchies. Bob
-files
-are useful because they track a number per distinct "snarf" types that
-is
-used to make uniquely named new archives of the appropriate type.
-This
-number is an ever increasing integer that's stored in a well-known
-(configurable) location. When a snarf file is unpacked (using the
-"unsnarf" tool), the number is updated on the local machine so that the
-next generated file will
-be one greater than the previous number. If one is travelling
-between
-two machines with the same snarf file, this will have the effect of
-keeping
-the number updated on both sides.
- </blockquote>
- <h3><a href="../files/zap_the_dir.pl">zap_the_dir.pl</a></h3>
- <blockquote>Support for the zapdirs utility. This library
-cleans out the directory that it is passed by removing files that are
-not considered important (using "<a href="#filename%20helper">filename_helper.pl</a>
-"). The list of important files is something you might want to
-look at to ensure that you won't get burned by zapdirs.</blockquote>
- </blockquote>
- </td>
- </tr>
- </tbody>
-</table>
-</center>
-<h3> </h3>
-<center>
-<table bgcolor="#330000" border="4" cellpadding="0" cellspacing="0"
- cols="1" width="92%">
- <tbody>
- <tr>
- <td>
- <h2>Applications</h2>
- <blockquote>
- <h3> <a href="../text/add_cr.pl">add_cr.pl</a></h3>
- <blockquote>Processes Unix format text files for pcdos by
-forcing the line endings to be Carriage Return plus Line Feed (CRLF).</blockquote>
- <h4> </h4>
- <h3><a href="../cgi/cgi_display.pl">cgi_display.pl</a></h3>
- <blockquote>Turns the files passed on the command line into a
-stream of CGI compatible text output. The javascript show_file method
-(see the
-source for this page) is preferred since it is lighter weight and
-doesn't
-need cgi, but there are some situations where cgi is the only option
-(older
-browsers or requirements of no javascript).</blockquote>
- <h4> </h4>
- <h3> <a href="../files/change_endings.pl">change_endings.pl</a></h3>
- <blockquote>Replaces the suffix of all filenames in the current
-directory
-with a different suffix. Suffix here is defined as the set of
-characters
-after the last period ('.') in the name. Note this will not work
-for
-names without suffices.</blockquote>
- <h3> </h3>
- <h3><a href="../text/cpdiff.pl">cpdiff.pl</a></h3>
- <blockquote>Copies files from a source directory into a
-destination directory. The files are only copied when they are
-missing in the destination or when the destination version has
-different contents. The syntax looks like this:<br>
- cpdiff source destination<br>
-The assumption is that the files in the source directory are somehow
-better, newer or more complete than the set of files in the destination.<br>
- </blockquote>
- <h3><a href="../text/cpdiffnow.pl">cpdiffnow.pl</a></h3>
- <blockquote> Similar to cpdiff, but this utility sets the
-destination file's time stamp to "now". This should cause the new
-or changed files in the destination directory to be more recent than
-anything else in there. This is helpful sometimes for forcing
-compilation of modified source files.<br>
- </blockquote>
-
- <h3> </h3>
- <h3><a name="differ"></a><a
- href="../text/differ.pl">differ.pl</a></h3>
- <blockquote>Compares two directory hierarchies and the files
-they
-contain. The first parameter is a directory
-to compare against "this" directory;
-every subdirectory "here" will be traversed in order to build the
-output file that shows the differences. An optional second
-argument can be used to specify a different directory than the current
-one as the source of the comparison (the first argument is always the
-destination of the comparison).</blockquote>
- <h3> <a href="../files/filedump.pl">filedump.pl</a></h3>
- <blockquote>Collects the contents of the files whose names are
-passed on the command line into one gigundo stream which is passed to
-standard output. The output can be piped into another file as desired.</blockquote>
- <h3> <a href="../core/generate_aliases.pl">generate_aliases.pl</a></h3>
- <blockquote>Performs some useful activities for the shell
-environment. Using the environment variable for FEISTY_MEOW_SCRIPTS (which
-is set in the appropriate startup files to be the shell scripts
-directory, where all this stuff lives), generate_aliases will create
-all of the aliases files for the combinations of operating systems and
-types of shells supported. Currently this includes Linux, Unix,
-PCDOS, OS/2 and MS-WIN32 (9x, NT, 2K, XP, etc) for
-supported operating systems. The shell languages supported are
-dos's command, nt's cmd, unix's sh and bash, and perl. This script will also look for
-any files ending in ".sh" or ".pl" and it will create aliases for them
-in forms appropriate to the different shells. The .zz_feisty_loading
-subdirectory is created under the home directory as a storage place for the generated script
-files.</blockquote>
- <h4> </h4>
- <h3> <a href="../text/new_sig.pl">new_sig.pl</a></h3>
- <blockquote>Generates a signature file from the nechung
-database
-using the 'nechung' application. See the <a
- href="http://feistymeow.org/">Feisty Meow Concerns Codebase</a> for the nechung
-application.
- The database for nechung resides in the <a href="#download">whole Feisty Meow Concerns code package</a> in "feisty_meow/infobase".</blockquote>
- <h3> </h3>
- <h3> <a href="../files/renlower.pl">renlower.pl</a></h3>
- <blockquote>Renames all of the files passed on the command line
-such that they are only in lower-case. Useful if you're tired of
-passing mistakenly re-capitalized names from a defective 8.3 OS (e.g.
-Doze95/98) to
-a file system where you care about the case.</blockquote>
- <h3><a href="../processes/runner.pl">runner.pl</a></h3>
- <blockquote>Finds all executable files in the current directory
-(and subdirectories) and runs them. The output of the programs is
-sent to standard output. Standard error is used to report which
-file is being worked on, plus the running programs' own standard error
-streams are merged into runner's standard error stream. This
-makes it nice to do something like:<br>
- runner >runs.log<br>
-where the runs.log file will contain the output of each program that
-was executed and the console will be sent messages as each program is
-started and finished (and errors show up at the console also).<br>
- </blockquote>
- <h3> <a name="safedel"></a><a
- href="../files/safedel.pl">safedel.pl</a></h3>
- <blockquote>Makes deleting files and directories a little less
-nerve-wracking. If you substitute safedel as an alias for rm or
-del or deltree or whatever, it will make a zipped backup of the items
-before they are actually deleted. Safedel keeps track of a number
-that is attached to each zip to enforce uniquely numbered
-archives. They are stored in a directory named "zz_safedel_keep"
-that is stored under the temorary directory (specified by the
-environment
-variable named TMP). A report of the contents of the compressed
-trash
-is appended to a file named "zz_safedel.rpt" in the TMP directory.
-Occasional
-cleaning of the deleted files folder is recommend, but this utility has
-saved
-my various parts several times already.</blockquote>
- <h4> </h4>
- <h3> </h3>
- <h3><a href="../archival/snarf_linux_config.pl">snarf_linux_config.pl</a></h3>
- <blockquote>A snarf utility that packages up the
-important configuration files in a Linux installation.</blockquote>
- <h4> </h4>
- <h3> <a href="../archival/snarf_light.pl">snarf_light.pl</a></h3>
- <blockquote>A selective snarf of the source hierarchy.
-This
-collects the code that I manage. As such, this is probably
-irrelevant to anyone but CAK.</blockquote>
- <h3><a href="../archival/snarf_notes.pl">snarf_notes.pl</a></h3>
- <blockquote>Gathers all "important" files from the home
-directory.
- This
-is somewhat personally tuned but it includes files and directories that
-have
-"project", "notes", or "crucial" in their name.</blockquote>
- <h3> </h3>
- <h3> <a href="../archival/snarf_src.pl">snarf_src.pl</a></h3>
- <blockquote>A source code grabbing snarfer. The entire
-source
-code hierarchy is snarfed. Note that one should edit the
-hierarchy
-location to make it appropriate for your local source code.</blockquote>
-
- <h3><a href="../files/summing_dir.pl">summing_dir.pl</a></h3>
- <blockquote>Offers a directory listing along with total file
-sizes
-and disk free space.<br>
- <br>
- </blockquote>
- <h3><a href="../build/synch_build.pl">synch_build.pl</a></h3>
- <blockquote>This is a helper utility that synchronizes the binary
-outputs from a build process with an existing installed location. Given a target directory, the executable
-programs and dynamic libraries that exist there will be synchronized
-with the build repository's versions. This is kind of a quickie
-upgrade process, as long as the files in the target location are not
-locked by other processes.<br>
- </blockquote>
- <h3> <a href="../archival/unsnarf.pl">unsnarf.pl</a></h3>
- <blockquote>Uses the snarfer utilities to undo a previously
-snarfed file. A folder named "snarf_BASE" is created for the
-contents, where BASE
-is replaced with the basename of the snarf file (that is, without the
-".snarf"
-suffix). The number that tracks the snarf files of this type is
-updated
-such that the next snarf file will be at least one higher than this
-snarf's
-sorta
-unique number. The number will be managed correctly if you're
-always
-unsnarfing the most recent snarf files before creating any new snarfs.</blockquote>
- <h4> </h4>
- <h3> <a href="../files/whack_forever.pl">whack_forever.pl</a></h3>
- <blockquote>Since all of my file deletion commands are aliases
-to <a href="#safedel">safedel</a>, it is hard to actually remove a
-file. If I'm really really sure that a file or directory needs to
-be
-permanently deleted, then this command can be used. It shows the
-names
-it is removing also, but it does _not_ ask for confirmation.</blockquote>
- <h3> </h3>
- <h3><a href="../security/y2038_check.pl">y2038_check.pl</a></h3>
- <div style="margin-left: 40px;">Tests the system for survival
-past the year 2038, which is when the Unix time scale runs out of bits
-for the number of seconds since 1970 measured in a 32 bit integer.<br>
- </div>
- <h3><a href="../files/zapdirs.pl">zapdirs.pl</a></h3>
- <blockquote>Removes empty directories and directories
-containing only
-unimportant crud (see "<a href="#filename%20helper">filename_helper.pl</a>").
-If there are no arguments, then the current directory is cleaned up;
-any subdirectories
-will be traversed into and removed if it seems appropriate.
-Otherwise,
-zapdirs operates on the arguments passed to it as if they are directory
-names
-to be cleaned.</blockquote>
- </blockquote>
- </td>
- </tr>
- </tbody>
-</table>
-<h3> </h3>
-</center>
-</body>
-</html>