New scripts.
[misc] / inplace.1
diff --git a/inplace.1 b/inplace.1
new file mode 100644 (file)
index 0000000..e4fb9ce
--- /dev/null
+++ b/inplace.1
@@ -0,0 +1,69 @@
+.de VS
+.sp 1
+.RS
+.nf
+.ft B
+..
+.de VE
+.ft R
+.fi
+.RE
+.sp 1
+..
+.TH inplace 1 "5 February 2005" "Edgeware tools"
+.SH NAME
+inplace \- update a file in-place
+.SH SYNOPSIS
+.B inplace
+.I file
+...
+.B \-\-
+.I program
+.RI [ arguments ...]
+.SH DESCRIPTION
+The
+.B inplace
+program rewrites files in place using filters.  For each
+.I file
+it runs
+.VS
+.IR "program arguments " ...
+.VE
+with standard input redirected from
+.I file
+and redirecting standard output to
+.IR file \c
+.BR .new .
+If all these programs are successful, then each 
+.I file
+is copied to
+.IB file .old
+and each
+.IB file .new
+renamed to
+.IR file ;
+the
+.IB file .old
+files are then deleted.  If something went wrong, the 
+.IB file .new
+files are all deleted and the original
+.IR file s
+are left unmodified.
+.I program
+exits successfully,
+.B inplace
+will rename the newly-written
+.IB file .new
+to simply
+.I file
+and exit zero; otherwise it deletes
+.IB file .new
+and exits the same as
+.I program
+did.
+.SH BUGS
+Doesn't exit correctly if subprogram was killed by a signal.  The update
+isn't completely perfect but it's very good; it can leave debris lying
+around if strange things happen during the renaming.
+.SH AUTHOR
+Mark Wooding (mdw@nsict.org).