combine—Extract Multipart uuencoded Binaries
Contributed by Rahul Dhesi
Of all the scripts I have ever written, the one I am most proud of is the “combine” script.
While I was moderating comp.binaries.ibm.pc, I wanted to provide users a simple way of extracting multipart uuencoded binaries. I added BEGIN and END headers to each part to enclose the uuencoded part and provided users with the following script:
cat $* | sed '/^END/,/^BEGIN/d' | uudecode
This script will accept a list of filenames (in order) provided as command-line arguments. It will also accept concatenated articles as standard input.
This script invokes cat in a very useful way that is well known to expert shell script users but not enough used by most others. This allows the user the choice of either providing command-line arguments or standard input.
The script invokes sed to strip out superfluous headers and trailers, except for headers in the first input file and trailers in the last input file. The final result is that the uuencoded part of the multiple input files is extracted and uudecoded. Each input file (see postings in comp.binaries.ibm.pc) has the following form:
I have lots of other shell stuff, but the above is simplest and has proved useful to several thousand comp.binaries.ibm.pc readers.
Program Notes for combine
This one is pretty obvious but accomplishes a lot. For those who might not understand the use of this command, here is the explanation. A Usenet newsgroup such as ...