Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
61 lines (45 sloc) 2.22 KB
$ENV{__EMB_EXTRAMETA}="expanfind (select and extend filelists if another file with a specific suffix exists)";
if (1==$ENV{__EMB_COUNT}) {
} else {
<p>I probably have the usual number of scripts for backups from
single-instance tarballs to dd to incrementals to rsync-style
hardlinked snapshots with support scripts like xfer_backup.diff to
diff, echo or ls a file in the backup relative to $PWD or the
specified file.</p>
<p> The scripts need a rewrite and some effort to generalize before
release; then again, they've been working reliable for years now and
I'm loath to change them without some additional 'benefit' or
interesting major feature (like e.g. root-less backup - but that way's
more effort than interest...).</p>
<p>If you also use a filelist based backup, <b>expanfind</b> may be of
interest, as you can pipe find results to expanfind, have expanfind
grep that list for interesting files, and then <i>expand</i> the grep
results by adding any result-<i>related</i> file to the list. The name
is a play on expansyn, as expanfind does indeed something like synonym
expansion for filenames (the script still contains some profiling
comments comparing various code variants - with some interesting
conclusions wrt performance).
<p>Example: find / | expanfind -tag rpmsave will return the list of
rpmsave and all files that 'share' a similar prefix. Also useful for
backups of modified configuration files (just copy FILE the original
to FILE.TRACKED, and expanfind -tag TRACKED now 'tracks' FILE*).</p>
<p>Recently I've read about <b>ccollect</b>, which might be a suitable
substitute for my own filelist-based rsync snapshot script (which is
the major non-glue portion of code within the backup scripts), as it
also seems to be list-based - at the very least it supports
<p><a href="">Git
View of this section / Download</a></p>
<li><B>expanfind</B> - stemming / tagging based on filelist or
filesystem contents
[*}*][# MUST BE AT EOF! #]