[Coco] LHA problem

Gene Heskett gheskett at wdtv.com
Sat Feb 14 10:46:00 EST 2015


On Saturday, February 14, 2015 08:59:25 AM Robert Gault wrote:
> Bob Devries wrote:
> > Hi all,
> > 
> > I'm trying to use LHA to archive my Rainbow on disk collection. I
> > currently have a directory for each year that I have. I CHD to the
> > directory I want to archive:
> > 
> > CHD /sd1/ROD_OS9/OCT86
> > 
> > then my LHA command line is:
> > :lha a -r ../oct86.lzh *
> > 
> > LHA responds with:
> > 
> > ==> 60% read.me.first    o
> > 
> > Can't find file : 'CMDS'
> > Can't find file : 'SOURCE'
> > 
> > LHA Error #1
> > ERROR #001
> > 
> > I'm pretty sure I have the correct syntax; note the leading : for
> > wild-card expansion in Shell+ 2.2.....
> > 'a' for add
> > '-r' for recursively collect files
> > '../oct86.lzh' the target lzh archive file
> > '*' do all files
> > 
> > What am I doing wrong? Yes, lha and xlh (version 2.11C IIRC) are both
> > in my CMDS directory.
> > 
> > Regards, Bob Devries
> > Dalby, QLD, Australia
> 
> Without seeing the directory structure in OCT86, it is hard to tell
> what lha is complaining about. Here is the inline help for lha.
> 
> LHA v2.11:  File Archive              Copyright (c) Haruyasu Yoshizaki,
> 1988-91 LHA OS9 v2.11c  by E. M. Krenciglowa 1993-94        UNLZH  by
> N. Rheaume 1992 Usage: LHA <command> [-option[-+012|WDIR]]
> <archive[.lzh]> [DIR/] [filespecs]
> ----------------------------------------------------------------------
> --------- <command>
>       a: Add files          u: Update files         m: Move files
>       f: Freshen files      d: Delete files         p: disPlay files
>       e: Extract files      x: eXtract w/pathnames  t: Test archive
> integrity l: List files         v: list View w/pathnames
>    <option>
>       r: Recursively collect files        w: assign Work directory
>       x: allow eXtended file names        m: no Message for query
>       p: distinguish full Path names      c: skip time-stamp Check
>       a: allow any Attributes of files    z: Zero compression (only
> store) t: archive's Time-stamp option      h: select Header level
> (default =1) o: use Old compatible method        n: display No
> indicator a/o pathname A: convert text (CR LF => CR)       l: display
> Long name with indicator Pn: pack 1-fast 9-best (default 6)  U: don't
> make filenames lowercase Tnn: tabstops nn characters apart   L: legal
> OS9 filename mapping
> 
> Robert

You folks are doing an oil & water mix-n-match of functions that does not 
mix well.

Since lha is capable of doing its own "shell expansion" when the -r is in 
effect, I have never used the extra leading : to invoke shell expansion.  

Besides that, the shells expansion is not all that useable as the 
expansion buffer is about 50k too small to hold all of a busy directory 
that has been extended several times.  I have, for that limited buffer 
reason, found shell expansion to be less than useful, and capable of 
crashing the shell to boot as it did not appear to handle a buffer 
overflow at all well.

So don't use the shell expension, just let lha do its own 1 at a time 
thing.  I haven't run it in a while, but I think to do a full directory 
into one archive file, that you should cd back out one level and as shown 
in the help, name the directory you want in the archive as something like 
'Oct89/', note slash & no quotes, and put the -w work file right there in 
the parent directory.  Or wherever you are organized to want it as it can 
take a full pathlist of a reasonable length IIRC.

I suppose its possible you could work IN the directory you want, by 
specifying a ./ as the src, but then you would have to put the -w file as 
../filename.lha (out of that directry IOW) else you would be recursively 
backing up the file you are creating.  ISTR doing that once a couple 
decades back up the log and made a mess to clean up when the disk or the 
FD.SEG was full.

Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>
US V Castleman, SCOTUS, Mar 2014 is grounds for Impeaching SCOTUS


More information about the Coco mailing list