home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: SHell self-extracting ARchive
(archive/shar).
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Newsgroup Content (archive/news)
| magic
| Supported |
100%
| dexvert
| SHell self-extracting ARchive (archive/shar)
| magic
| Supported |
100%
| dexvert
| Internet Message Format (text/imf)
| magic
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| news or mail text
| default
| |
99%
| file
| C source, ASCII text
| default
| |
100%
| checkBytes
| Printable ASCII
| default
| |
100%
| perlTextCheck
| Likely Text (Perl)
| default
| |
100%
| siegfried
| fmt/329 Shell Archive Format
| default
| |
100%
| detectItEasy
| Format: plain text[LF]
| default (weak)
| |
100%
| xdgMime
| message/rfc822
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 53 75 62 6a 65 63 74 3a | 20 20 76 30 37 69 30 30 |Subject:| v07i00|
|00000010| 32 3a 20 20 54 6f 6f 6c | 73 20 74 6f 20 72 65 61 |2: Tool|s to rea|
|00000020| 64 20 64 61 6d 61 67 65 | 64 20 74 61 72 20 74 61 |d damage|d tar ta|
|00000030| 70 65 73 20 28 74 61 72 | 5f 61 69 64 73 29 0a 4e |pes (tar|_aids).N|
|00000040| 65 77 73 67 72 6f 75 70 | 73 3a 20 6d 6f 64 2e 73 |ewsgroup|s: mod.s|
|00000050| 6f 75 72 63 65 73 0a 41 | 70 70 72 6f 76 65 64 3a |ources.A|pproved:|
|00000060| 20 72 73 40 6d 69 72 72 | 6f 72 2e 55 55 43 50 0a | rs@mirr|or.UUCP.|
|00000070| 0a 53 75 62 6d 69 74 74 | 65 64 20 62 79 3a 20 70 |.Submitt|ed by: p|
|00000080| 79 72 61 6d 69 64 21 75 | 74 7a 6f 6f 21 68 65 6e |yramid!u|tzoo!hen|
|00000090| 72 79 0a 4d 6f 64 2e 73 | 6f 75 72 63 65 73 3a 20 |ry.Mod.s|ources: |
|000000a0| 56 6f 6c 75 6d 65 20 37 | 2c 20 49 73 73 75 65 20 |Volume 7|, Issue |
|000000b0| 32 0a 41 72 63 68 69 76 | 65 2d 6e 61 6d 65 3a 20 |2.Archiv|e-name: |
|000000c0| 74 61 72 5f 61 69 64 73 | 0a 0a 0a 5b 20 20 49 20 |tar_aids|...[ I |
|000000d0| 77 72 6f 74 65 20 74 68 | 65 20 4d 61 6b 65 66 69 |wrote th|e Makefi|
|000000e0| 6c 65 20 61 6e 64 20 72 | 65 70 61 63 6b 65 64 20 |le and r|epacked |
|000000f0| 74 68 65 20 61 72 63 68 | 69 76 65 2e 20 20 54 68 |the arch|ive. Th|
|00000100| 65 73 65 20 74 6f 6f 6c | 73 20 61 72 65 0a 20 20 |ese tool|s are. |
|00000110| 20 76 65 72 79 20 75 73 | 65 66 75 6c 21 20 20 2d | very us|eful! -|
|00000120| 2d 72 24 20 20 5d 0a 0a | 23 21 2f 62 69 6e 2f 73 |-r$ ]..|#!/bin/s|
|00000130| 68 0a 23 20 54 68 69 73 | 20 69 73 20 61 20 73 68 |h.# This| is a sh|
|00000140| 65 6c 6c 20 61 72 63 68 | 69 76 65 2e 20 20 52 65 |ell arch|ive. Re|
|00000150| 6d 6f 76 65 20 61 6e 79 | 74 68 69 6e 67 20 62 65 |move any|thing be|
|00000160| 66 6f 72 65 20 74 68 69 | 73 20 6c 69 6e 65 2c 0a |fore thi|s line,.|
|00000170| 23 20 74 68 65 6e 20 75 | 6e 70 61 63 6b 20 69 74 |# then u|npack it|
|00000180| 20 62 79 20 73 61 76 69 | 6e 67 20 69 74 20 69 6e | by savi|ng it in|
|00000190| 20 61 20 66 69 6c 65 20 | 61 6e 64 20 74 79 70 69 | a file |and typi|
|000001a0| 6e 67 20 22 73 68 20 66 | 69 6c 65 22 2e 0a 0a 23 |ng "sh f|ile"...#|
|000001b0| 20 45 78 69 74 20 73 74 | 61 74 75 73 3b 20 73 65 | Exit st|atus; se|
|000001c0| 74 20 74 6f 20 31 20 6f | 6e 20 22 77 63 22 20 65 |t to 1 o|n "wc" e|
|000001d0| 72 72 6f 72 73 20 6f 72 | 20 69 66 20 77 6f 75 6c |rrors or| if woul|
|000001e0| 64 20 6f 76 65 72 77 72 | 69 74 65 2e 0a 53 54 41 |d overwr|ite..STA|
|000001f0| 54 55 53 3d 30 0a 23 20 | 43 6f 6e 74 65 6e 74 73 |TUS=0.# |Contents|
|00000200| 3a 20 20 52 45 41 44 4d | 45 20 4d 61 6b 65 66 69 |: READM|E Makefi|
|00000210| 6c 65 20 74 61 72 67 2e | 31 20 74 61 72 67 2e 63 |le targ.|1 targ.c|
|00000220| 20 74 61 72 6c 2e 63 0a | 20 0a 65 63 68 6f 20 78 | tarl.c.| .echo x|
|00000230| 20 2d 20 52 45 41 44 4d | 45 0a 69 66 20 74 65 73 | - READM|E.if tes|
|00000240| 74 20 2d 66 20 52 45 41 | 44 4d 45 20 3b 20 74 68 |t -f REA|DME ; th|
|00000250| 65 6e 0a 20 20 20 20 65 | 63 68 6f 20 52 45 41 44 |en. e|cho READ|
|00000260| 4d 45 20 65 78 69 73 74 | 73 2c 20 70 75 74 74 69 |ME exist|s, putti|
|00000270| 6e 67 20 6f 75 74 70 75 | 74 20 69 6e 20 24 24 52 |ng outpu|t in $$R|
|00000280| 45 41 44 4d 45 0a 20 20 | 20 20 4f 55 54 3d 24 24 |EADME. | OUT=$$|
|00000290| 52 45 41 44 4d 45 0a 20 | 20 20 20 53 54 41 54 55 |README. | STATU|
|000002a0| 53 3d 31 0a 65 6c 73 65 | 0a 20 20 20 20 4f 55 54 |S=1.else|. OUT|
|000002b0| 3d 52 45 41 44 4d 45 0a | 66 69 0a 73 65 64 20 27 |=README.|fi.sed '|
|000002c0| 73 2f 5e 58 58 2f 2f 27 | 20 3e 20 24 4f 55 54 20 |s/^XX//'| > $OUT |
|000002d0| 3c 3c 27 40 2f 2f 45 2a | 4f 2a 46 20 52 45 41 44 |<<'@//E*|O*F READ|
|000002e0| 4d 45 2f 2f 27 0a 58 58 | 48 65 72 65 20 61 72 65 |ME//'.XX|Here are|
|000002f0| 20 74 77 6f 20 73 6d 61 | 6c 6c 20 70 75 62 6c 69 | two sma|ll publi|
|00000300| 63 2d 64 6f 6d 61 69 6e | 20 70 72 6f 67 72 61 6d |c-domain| program|
|00000310| 73 20 66 6f 72 20 73 63 | 61 76 65 6e 67 69 6e 67 |s for sc|avenging|
|00000320| 20 66 69 6c 65 73 20 66 | 72 6f 6d 0a 58 58 64 61 | files f|rom.XXda|
|00000330| 6d 61 67 65 64 20 74 61 | 72 20 74 61 70 65 73 2e |maged ta|r tapes.|
|00000340| 20 20 54 68 65 79 20 64 | 6f 6e 27 74 20 73 69 6e | They d|on't sin|
|00000350| 67 20 6f 72 20 64 61 6e | 63 65 2c 20 62 75 74 20 |g or dan|ce, but |
|00000360| 74 68 65 79 20 61 72 65 | 20 68 69 67 68 6c 79 0a |they are| highly.|
|00000370| 58 58 70 6f 72 74 61 62 | 6c 65 2c 20 61 6e 64 20 |XXportab|le, and |
|00000380| 74 68 65 79 20 61 72 65 | 20 73 69 6d 70 6c 65 20 |they are| simple |
|00000390| 65 6e 6f 75 67 68 20 74 | 68 61 74 20 74 68 65 79 |enough t|hat they|
|000003a0| 20 61 72 65 20 72 65 61 | 64 69 6c 79 20 75 6e 64 | are rea|dily und|
|000003b0| 65 72 73 74 6f 6f 64 0a | 58 58 61 6e 64 20 63 68 |erstood.|XXand ch|
|000003c0| 61 6e 67 65 64 20 74 6f | 20 6d 65 65 74 20 73 70 |anged to| meet sp|
|000003d0| 65 63 69 61 6c 20 72 65 | 71 75 69 72 65 6d 65 6e |ecial re|quiremen|
|000003e0| 74 73 2e 20 20 54 68 65 | 79 20 61 72 65 6e 27 74 |ts. The|y aren't|
|000003f0| 20 74 68 65 20 6d 6f 73 | 74 0a 58 58 62 65 61 75 | the mos|t.XXbeau|
|00000400| 74 69 66 75 6c 20 63 6f | 64 65 20 6f 6e 20 45 61 |tiful co|de on Ea|
|00000410| 72 74 68 2c 20 73 69 6e | 63 65 20 74 68 65 79 20 |rth, sin|ce they |
|00000420| 61 72 65 20 62 61 73 69 | 63 61 6c 6c 79 20 63 6c |are basi|cally cl|
|00000430| 65 61 6e 65 64 2d 75 70 | 20 76 65 72 73 69 6f 6e |eaned-up| version|
|00000440| 73 0a 58 58 6f 66 20 71 | 75 69 63 6b 2d 61 6e 64 |s.XXof q|uick-and|
|00000450| 2d 64 69 72 74 79 20 69 | 6d 70 72 6f 76 69 73 61 |-dirty i|mprovisa|
|00000460| 74 69 6f 6e 73 2e 20 20 | 54 68 65 79 20 64 6f 2c |tions. |They do,|
|00000470| 20 68 6f 77 65 76 65 72 | 2c 20 77 6f 72 6b 2e 0a | however|, work..|
|00000480| 40 2f 2f 45 2a 4f 2a 46 | 20 52 45 41 44 4d 45 2f |@//E*O*F| README/|
|00000490| 2f 0a 63 68 6d 6f 64 20 | 75 3d 72 77 2c 67 3d 72 |/.chmod |u=rw,g=r|
|000004a0| 77 2c 6f 3d 72 77 20 24 | 4f 55 54 0a 20 0a 65 63 |w,o=rw $|OUT. .ec|
|000004b0| 68 6f 20 78 20 2d 20 4d | 61 6b 65 66 69 6c 65 0a |ho x - M|akefile.|
|000004c0| 69 66 20 74 65 73 74 20 | 2d 66 20 4d 61 6b 65 66 |if test |-f Makef|
|000004d0| 69 6c 65 20 3b 20 74 68 | 65 6e 0a 20 20 20 20 65 |ile ; th|en. e|
|000004e0| 63 68 6f 20 4d 61 6b 65 | 66 69 6c 65 20 65 78 69 |cho Make|file exi|
|000004f0| 73 74 73 2c 20 70 75 74 | 74 69 6e 67 20 6f 75 74 |sts, put|ting out|
|00000500| 70 75 74 20 69 6e 20 24 | 24 4d 61 6b 65 66 69 6c |put in $|$Makefil|
|00000510| 65 0a 20 20 20 20 4f 55 | 54 3d 24 24 4d 61 6b 65 |e. OU|T=$$Make|
|00000520| 66 69 6c 65 0a 20 20 20 | 20 53 54 41 54 55 53 3d |file. | STATUS=|
|00000530| 31 0a 65 6c 73 65 0a 20 | 20 20 20 4f 55 54 3d 4d |1.else. | OUT=M|
|00000540| 61 6b 65 66 69 6c 65 0a | 66 69 0a 73 65 64 20 27 |akefile.|fi.sed '|
|00000550| 73 2f 5e 58 58 2f 2f 27 | 20 3e 20 24 4f 55 54 20 |s/^XX//'| > $OUT |
|00000560| 3c 3c 27 40 2f 2f 45 2a | 4f 2a 46 20 4d 61 6b 65 |<<'@//E*|O*F Make|
|00000570| 66 69 6c 65 2f 2f 27 0a | 58 58 61 6c 6c 3a 09 74 |file//'.|XXall:.t|
|00000580| 61 72 67 20 74 61 72 6c | 0a 0a 58 58 74 61 72 67 |arg tarl|..XXtarg|
|00000590| 3a 09 74 61 72 67 2e 63 | 0a 58 58 09 63 63 20 24 |:.targ.c|.XX.cc $|
|000005a0| 28 43 46 4c 41 47 53 29 | 20 2d 6f 20 24 40 20 24 |(CFLAGS)| -o $@ $|
|000005b0| 3c 0a 0a 58 58 74 61 72 | 6c 3a 09 74 61 72 6c 2e |<..XXtar|l:.tarl.|
|000005c0| 63 0a 58 58 09 63 63 20 | 24 28 43 46 4c 41 47 53 |c.XX.cc |$(CFLAGS|
|000005d0| 29 20 2d 6f 20 24 40 20 | 24 3c 0a 0a 58 58 23 20 |) -o $@ |$<..XX# |
|000005e0| 54 68 65 20 27 65 63 68 | 6f 27 20 63 61 75 73 65 |The 'ech|o' cause|
|000005f0| 73 20 74 68 65 20 22 72 | 69 67 68 74 20 74 68 69 |s the "r|ight thi|
|00000600| 6e 67 22 20 74 6f 20 68 | 61 70 70 65 6e 20 6f 6e |ng" to h|appen on|
|00000610| 20 34 2e 5b 32 33 5d 42 | 53 44 20 73 79 73 74 65 | 4.[23]B|SD syste|
|00000620| 6d 73 2e 0a 58 58 44 45 | 53 54 09 3d 20 2f 75 73 |ms..XXDE|ST.= /us|
|00000630| 72 2f 6c 6f 63 61 6c 2f | 62 69 6e 0a 58 58 4d 41 |r/local/|bin.XXMA|
|00000640| 4e 09 3d 20 2f 75 73 72 | 2f 6d 61 6e 2f 6d 61 6e |N.= /usr|/man/man|
|00000650| 31 0a 58 58 69 6e 73 74 | 61 6c 6c 3a 09 61 6c 6c |1.XXinst|all:.all|
|00000660| 0a 58 58 09 63 70 20 74 | 61 72 67 20 74 61 72 6c |.XX.cp t|arg tarl|
|00000670| 20 24 44 45 53 54 0a 58 | 58 09 63 70 20 74 61 72 | $DEST.X|X.cp tar|
|00000680| 67 2e 31 20 24 4d 41 4e | 2f 74 61 72 67 2e 31 0a |g.1 $MAN|/targ.1.|
|00000690| 58 58 09 65 63 68 6f 20 | 22 2e 73 6f 20 6d 61 6e |XX.echo |".so man|
|000006a0| 31 2f 74 61 72 6c 2e 31 | 22 20 3e 24 4d 41 4e 2f |1/tarl.1|" >$MAN/|
|000006b0| 74 61 72 67 2e 31 0a 40 | 2f 2f 45 2a 4f 2a 46 20 |targ.1.@|//E*O*F |
|000006c0| 4d 61 6b 65 66 69 6c 65 | 2f 2f 0a 63 68 6d 6f 64 |Makefile|//.chmod|
|000006d0| 20 75 3d 72 77 2c 67 3d | 72 77 2c 6f 3d 72 77 20 | u=rw,g=|rw,o=rw |
|000006e0| 24 4f 55 54 0a 20 0a 65 | 63 68 6f 20 78 20 2d 20 |$OUT. .e|cho x - |
|000006f0| 74 61 72 67 2e 31 0a 69 | 66 20 74 65 73 74 20 2d |targ.1.i|f test -|
|00000700| 66 20 74 61 72 67 2e 31 | 20 3b 20 74 68 65 6e 0a |f targ.1| ; then.|
|00000710| 20 20 20 20 65 63 68 6f | 20 74 61 72 67 2e 31 20 | echo| targ.1 |
|00000720| 65 78 69 73 74 73 2c 20 | 70 75 74 74 69 6e 67 20 |exists, |putting |
|00000730| 6f 75 74 70 75 74 20 69 | 6e 20 24 24 74 61 72 67 |output i|n $$targ|
|00000740| 2e 31 0a 20 20 20 20 4f | 55 54 3d 24 24 74 61 72 |.1. O|UT=$$tar|
|00000750| 67 2e 31 0a 20 20 20 20 | 53 54 41 54 55 53 3d 31 |g.1. |STATUS=1|
|00000760| 0a 65 6c 73 65 0a 20 20 | 20 20 4f 55 54 3d 74 61 |.else. | OUT=ta|
|00000770| 72 67 2e 31 0a 66 69 0a | 73 65 64 20 27 73 2f 5e |rg.1.fi.|sed 's/^|
|00000780| 58 58 2f 2f 27 20 3e 20 | 24 4f 55 54 20 3c 3c 27 |XX//' > |$OUT <<'|
|00000790| 40 2f 2f 45 2a 4f 2a 46 | 20 74 61 72 67 2e 31 2f |@//E*O*F| targ.1/|
|000007a0| 2f 27 0a 58 58 2e 54 48 | 20 54 41 52 47 20 31 20 |/'.XX.TH| TARG 1 |
|000007b0| 6c 6f 63 61 6c 0a 58 58 | 2e 44 41 20 32 33 20 4a |local.XX|.DA 23 J|
|000007c0| 75 6c 79 20 31 39 38 36 | 0a 58 58 2e 53 48 20 4e |uly 1986|.XX.SH N|
|000007d0| 41 4d 45 0a 58 58 74 61 | 72 67 2c 20 74 61 72 6c |AME.XXta|rg, tarl|
|000007e0| 20 5c 2d 20 72 65 63 6f | 76 65 72 20 66 69 6c 65 | \- reco|ver file|
|000007f0| 73 20 66 72 6f 6d 20 64 | 61 6d 61 67 65 64 20 74 |s from d|amaged t|
|00000800| 61 72 2d 66 6f 72 6d 61 | 74 20 61 72 63 68 69 76 |ar-forma|t archiv|
|00000810| 65 73 0a 58 58 2e 53 48 | 20 53 59 4e 4f 50 53 49 |es.XX.SH| SYNOPSI|
|00000820| 53 0a 58 58 5c 66 42 74 | 61 72 67 5c 66 52 20 66 |S.XX\fBt|arg\fR f|
|00000830| 69 6c 65 20 2e 2e 2e 0a | 58 58 2e 50 50 0a 58 58 |ile ....|XX.PP.XX|
|00000840| 5c 66 42 74 61 72 6c 5c | 66 52 0a 58 58 2e 53 48 |\fBtarl\|fR.XX.SH|
|00000850| 20 44 45 53 43 52 49 50 | 54 49 4f 4e 0a 58 58 5c | DESCRIP|TION.XX\|
|00000860| 66 49 54 61 72 67 5c 66 | 52 20 61 6e 64 20 5c 66 |fITarg\f|R and \f|
|00000870| 49 74 61 72 6c 5c 66 52 | 20 61 72 65 20 75 73 65 |Itarl\fR| are use|
|00000880| 64 20 74 6f 20 6c 69 73 | 74 20 61 6e 64 20 72 65 |d to lis|t and re|
|00000890| 63 6f 76 65 72 20 66 69 | 6c 65 73 20 66 72 6f 6d |cover fi|les from|
|000008a0| 20 61 0a 58 58 64 61 6d | 61 67 65 64 20 5c 66 49 | a.XXdam|aged \fI|
|000008b0| 74 61 72 5c 66 52 28 31 | 29 20 61 72 63 68 69 76 |tar\fR(1|) archiv|
|000008c0| 65 2e 0a 58 58 54 68 65 | 79 20 75 73 65 20 61 20 |e..XXThe|y use a |
|000008d0| 73 69 6d 70 6c 69 73 74 | 69 63 20 70 61 74 74 65 |simplist|ic patte|
|000008e0| 72 6e 2d 6d 61 74 63 68 | 69 6e 67 0a 58 58 61 70 |rn-match|ing.XXap|
|000008f0| 70 72 6f 61 63 68 20 74 | 6f 20 69 64 65 6e 74 69 |proach t|o identi|
|00000900| 66 79 20 5c 66 49 74 61 | 72 5c 66 52 20 68 65 61 |fy \fIta|r\fR hea|
|00000910| 64 65 72 20 62 6c 6f 63 | 6b 73 2e 0a 58 58 42 6f |der bloc|ks..XXBo|
|00000920| 74 68 20 77 69 6c 6c 20 | 63 68 65 65 72 66 75 6c |th will |cheerful|
|00000930| 6c 79 20 69 67 6e 6f 72 | 65 20 61 6c 6c 20 73 6f |ly ignor|e all so|
|00000940| 72 74 73 20 6f 66 20 62 | 61 64 20 74 68 69 6e 67 |rts of b|ad thing|
|00000950| 73 20 61 62 6f 75 74 20 | 74 68 65 20 61 72 63 68 |s about |the arch|
|00000960| 69 76 65 0a 58 58 28 73 | 75 63 68 20 61 73 20 77 |ive.XX(s|uch as w|
|00000970| 72 6f 6e 67 20 63 68 65 | 63 6b 73 75 6d 73 2c 20 |rong che|cksums, |
|00000980| 72 65 61 64 20 65 72 72 | 6f 72 73 2c 20 61 6e 64 |read err|ors, and|
|00000990| 20 73 63 72 61 70 65 64 | 2d 6f 66 66 20 6d 61 67 | scraped|-off mag|
|000009a0| 6e 65 74 69 63 20 73 75 | 72 66 61 63 65 2e 2e 2e |netic su|rface...|
|000009b0| 29 2c 0a 58 58 75 70 20 | 74 6f 20 61 20 6d 61 78 |),.XXup |to a max|
|000009c0| 69 6d 75 6d 20 6f 66 20 | 74 77 65 6e 74 79 20 68 |imum of |twenty h|
|000009d0| 61 72 64 20 65 72 72 6f | 72 73 20 69 6e 20 61 20 |ard erro|rs in a |
|000009e0| 72 6f 77 2e 0a 58 58 54 | 68 65 79 20 72 65 70 6f |row..XXT|hey repo|
|000009f0| 72 74 20 6f 6e 20 73 75 | 63 68 20 74 68 69 6e 67 |rt on su|ch thing|
|00000a00| 73 20 61 73 20 61 70 70 | 61 72 65 6e 74 20 65 6e |s as app|arent en|
|00000a10| 64 2d 6f 66 2d 66 69 6c | 65 2e 0a 58 58 42 6f 74 |d-of-fil|e..XXBot|
|00000a20| 68 20 70 72 6f 67 72 61 | 6d 73 20 72 65 61 64 20 |h progra|ms read |
|00000a30| 74 68 65 20 5c 66 49 74 | 61 72 5c 66 52 20 61 72 |the \fIt|ar\fR ar|
|00000a40| 63 68 69 76 65 20 66 72 | 6f 6d 20 73 74 61 6e 64 |chive fr|om stand|
|00000a50| 61 72 64 20 69 6e 70 75 | 74 2e 0a 58 58 2e 50 50 |ard inpu|t..XX.PP|
|00000a60| 0a 58 58 5c 66 49 54 61 | 72 6c 5c 66 52 20 6c 69 |.XX\fITa|rl\fR li|
|00000a70| 73 74 73 20 74 68 65 20 | 66 69 6c 65 20 6e 61 6d |sts the |file nam|
|00000a80| 65 73 20 69 74 20 73 65 | 65 73 20 69 6e 20 74 68 |es it se|es in th|
|00000a90| 65 20 61 72 63 68 69 76 | 65 2e 0a 58 58 49 74 20 |e archiv|e..XXIt |
|00000aa0| 69 73 20 70 61 72 74 69 | 63 75 6c 61 72 6c 79 20 |is parti|cularly |
|00000ab0| 75 73 65 66 75 6c 20 66 | 6f 72 20 0a 58 58 70 72 |useful f|or .XXpr|
|00000ac0| 65 70 61 72 69 6e 67 20 | 61 20 66 69 6c 65 20 6f |eparing |a file o|
|00000ad0| 66 20 6e 61 6d 65 73 20 | 66 6f 72 20 75 73 65 20 |f names |for use |
|00000ae0| 77 69 74 68 20 5c 66 49 | 74 61 72 67 5c 66 52 2e |with \fI|targ\fR.|
|00000af0| 0a 58 58 2e 50 50 0a 58 | 58 5c 66 49 54 61 72 67 |.XX.PP.X|X\fITarg|
|00000b00| 5c 66 52 20 74 61 6b 65 | 73 20 66 69 6c 65 20 6f |\fR take|s file o|
|00000b10| 72 20 64 69 72 65 63 74 | 6f 72 79 20 6e 61 6d 65 |r direct|ory name|
|00000b20| 73 20 61 73 20 61 72 67 | 75 6d 65 6e 74 73 0a 58 |s as arg|uments.X|
|00000b30| 58 61 6e 64 20 61 74 74 | 65 6d 70 74 73 20 74 6f |Xand att|empts to|
|00000b40| 20 65 78 74 72 61 63 74 | 20 74 68 65 6d 20 66 72 | extract| them fr|
|00000b50| 6f 6d 20 74 68 65 20 61 | 72 63 68 69 76 65 2e 0a |om the a|rchive..|
|00000b60| 58 58 5c 66 49 54 61 72 | 67 5c 66 52 20 69 73 20 |XX\fITar|g\fR is |
|00000b70| 6e 6f 74 20 77 69 6c 6c | 69 6e 67 20 74 6f 20 63 |not will|ing to c|
|00000b80| 72 65 61 74 65 20 64 69 | 72 65 63 74 6f 72 69 65 |reate di|rectorie|
|00000b90| 73 2c 20 68 6f 77 65 76 | 65 72 2c 0a 58 58 73 6f |s, howev|er,.XXso|
|00000ba0| 20 74 68 65 73 65 20 6d | 75 73 74 20 62 65 20 6d | these m|ust be m|
|00000bb0| 61 64 65 20 6d 61 6e 75 | 61 6c 6c 79 20 62 65 66 |ade manu|ally bef|
|00000bc0| 6f 72 65 68 61 6e 64 20 | 69 66 20 74 68 65 79 20 |orehand |if they |
|00000bd0| 64 6f 20 6e 6f 74 20 61 | 6c 72 65 61 64 79 20 65 |do not a|lready e|
|00000be0| 78 69 73 74 2e 0a 58 58 | 46 69 6c 65 73 20 61 72 |xist..XX|Files ar|
|00000bf0| 65 20 6f 77 6e 65 64 20 | 62 79 20 74 68 65 20 75 |e owned |by the u|
|00000c00| 73 65 72 2c 20 61 6e 64 | 20 68 61 76 65 20 68 69 |ser, and| have hi|
|00000c10| 73 20 64 65 66 61 75 6c | 74 20 70 65 72 6d 69 73 |s defaul|t permis|
|00000c20| 73 69 6f 6e 73 2e 0a 58 | 58 2e 53 48 20 45 58 41 |sions..X|X.SH EXA|
|00000c30| 4d 50 4c 45 0a 58 58 60 | 60 74 61 72 6c 20 3c 20 |MPLE.XX`|`tarl < |
|00000c40| 2f 64 65 76 2f 72 6d 74 | 38 20 3e 20 66 69 6c 65 |/dev/rmt|8 > file|
|00000c50| 6c 69 73 74 27 27 20 6c | 69 73 74 73 20 61 6c 6c |list'' l|ists all|
|00000c60| 20 66 69 6c 65 73 20 6f | 6e 20 74 68 65 20 74 61 | files o|n the ta|
|00000c70| 70 65 0a 58 58 6d 6f 75 | 6e 74 65 64 20 6f 6e 20 |pe.XXmou|nted on |
|00000c80| 2f 64 65 76 2f 72 6d 74 | 38 20 61 6e 64 20 70 6c |/dev/rmt|8 and pl|
|00000c90| 61 63 65 73 20 74 68 65 | 20 72 65 73 75 6c 74 73 |aces the| results|
|00000ca0| 20 69 6e 20 60 60 66 69 | 6c 65 6c 69 73 74 27 27 | in ``fi|lelist''|
|00000cb0| 2e 0a 58 58 2e 50 50 0a | 58 58 60 60 74 61 72 67 |..XX.PP.|XX``targ|
|00000cc0| 20 6a 6f 65 2f 70 72 65 | 63 69 6f 75 73 20 3c 20 | joe/pre|cious < |
|00000cd0| 2f 64 65 76 2f 72 6d 74 | 30 27 27 20 72 65 73 74 |/dev/rmt|0'' rest|
|00000ce0| 6f 72 65 73 20 74 68 65 | 20 66 69 6c 65 0a 58 58 |ores the| file.XX|
|00000cf0| 60 60 6a 6f 65 2f 70 72 | 65 63 69 6f 75 73 27 27 |``joe/pr|ecious''|
|00000d00| 20 66 72 6f 6d 20 74 68 | 65 20 74 61 70 65 20 6d | from th|e tape m|
|00000d10| 6f 75 6e 74 65 64 20 6f | 6e 20 2f 64 65 76 2f 72 |ounted o|n /dev/r|
|00000d20| 6d 74 30 2e 0a 58 58 54 | 68 65 20 64 69 72 65 63 |mt0..XXT|he direc|
|00000d30| 74 6f 72 79 20 60 60 6a | 6f 65 27 27 20 6d 75 73 |tory ``j|oe'' mus|
|00000d40| 74 20 61 6c 72 65 61 64 | 79 20 65 78 69 73 74 2e |t alread|y exist.|
|00000d50| 0a 58 58 2e 53 48 20 53 | 45 45 20 41 4c 53 4f 0a |.XX.SH S|EE ALSO.|
|00000d60| 58 58 74 61 72 28 31 29 | 0a 58 58 2e 53 48 20 48 |XXtar(1)|.XX.SH H|
|00000d70| 49 53 54 4f 52 59 0a 58 | 58 57 72 69 74 74 65 6e |ISTORY.X|XWritten|
|00000d80| 20 62 79 20 48 65 6e 72 | 79 20 53 70 65 6e 63 65 | by Henr|y Spence|
|00000d90| 72 2c 20 55 6e 69 76 2e | 20 6f 66 20 54 6f 72 6f |r, Univ.| of Toro|
|00000da0| 6e 74 6f 20 5a 6f 6f 6c | 6f 67 79 2e 0a 58 58 54 |nto Zool|ogy..XXT|
|00000db0| 68 69 73 20 73 6f 66 74 | 77 61 72 65 20 69 73 20 |his soft|ware is |
|00000dc0| 70 75 62 6c 69 63 20 64 | 6f 6d 61 69 6e 2e 0a 58 |public d|omain..X|
|00000dd0| 58 4d 61 6e 75 61 6c 20 | 70 61 67 65 20 62 79 20 |XManual |page by |
|00000de0| 43 68 72 69 73 20 52 6f | 62 65 72 74 73 6f 6e 2e |Chris Ro|bertson.|
|00000df0| 0a 58 58 2e 53 48 20 42 | 55 47 53 0a 58 58 5c 66 |.XX.SH B|UGS.XX\f|
|00000e00| 49 54 61 72 67 5c 66 52 | 20 73 68 6f 75 6c 64 20 |ITarg\fR| should |
|00000e10| 62 65 20 73 6d 61 72 74 | 65 72 20 61 62 6f 75 74 |be smart|er about|
|00000e20| 20 64 69 72 65 63 74 6f | 72 69 65 73 20 61 6e 64 | directo|ries and|
|00000e30| 20 70 65 72 6d 69 73 73 | 69 6f 6e 73 2e 0a 58 58 | permiss|ions..XX|
|00000e40| 2e 50 50 0a 58 58 54 68 | 65 79 20 72 65 61 6c 6c |.PP.XXTh|ey reall|
|00000e50| 79 20 73 68 6f 75 6c 64 | 20 75 73 65 20 74 68 65 |y should| use the|
|00000e60| 20 5c 66 49 74 61 72 5c | 66 52 20 68 65 61 64 65 | \fItar\|fR heade|
|00000e70| 72 2d 62 6c 6f 63 6b 20 | 63 68 65 63 6b 73 75 6d |r-block |checksum|
|00000e80| 2c 0a 58 58 69 6e 73 74 | 65 61 64 20 6f 66 20 74 |,.XXinst|ead of t|
|00000e90| 68 65 20 73 6c 69 67 68 | 74 6c 79 2d 61 72 63 61 |he sligh|tly-arca|
|00000ea0| 6e 65 20 70 61 74 74 65 | 72 6e 20 6d 61 74 63 68 |ne patte|rn match|
|00000eb0| 65 72 2c 20 74 6f 20 69 | 64 65 6e 74 69 66 79 20 |er, to i|dentify |
|00000ec0| 68 65 61 64 65 72 20 62 | 6c 6f 63 6b 73 2e 0a 40 |header b|locks..@|
|00000ed0| 2f 2f 45 2a 4f 2a 46 20 | 74 61 72 67 2e 31 2f 2f |//E*O*F |targ.1//|
|00000ee0| 0a 63 68 6d 6f 64 20 75 | 3d 72 77 2c 67 3d 72 77 |.chmod u|=rw,g=rw|
|00000ef0| 2c 6f 3d 72 77 20 24 4f | 55 54 0a 20 0a 65 63 68 |,o=rw $O|UT. .ech|
|00000f00| 6f 20 78 20 2d 20 74 61 | 72 67 2e 63 0a 69 66 20 |o x - ta|rg.c.if |
|00000f10| 74 65 73 74 20 2d 66 20 | 74 61 72 67 2e 63 20 3b |test -f |targ.c ;|
|00000f20| 20 74 68 65 6e 0a 20 20 | 20 20 65 63 68 6f 20 74 | then. | echo t|
|00000f30| 61 72 67 2e 63 20 65 78 | 69 73 74 73 2c 20 70 75 |arg.c ex|ists, pu|
|00000f40| 74 74 69 6e 67 20 6f 75 | 74 70 75 74 20 69 6e 20 |tting ou|tput in |
|00000f50| 24 24 74 61 72 67 2e 63 | 0a 20 20 20 20 4f 55 54 |$$targ.c|. OUT|
|00000f60| 3d 24 24 74 61 72 67 2e | 63 0a 20 20 20 20 53 54 |=$$targ.|c. ST|
|00000f70| 41 54 55 53 3d 31 0a 65 | 6c 73 65 0a 20 20 20 20 |ATUS=1.e|lse. |
|00000f80| 4f 55 54 3d 74 61 72 67 | 2e 63 0a 66 69 0a 73 65 |OUT=targ|.c.fi.se|
|00000f90| 64 20 27 73 2f 5e 58 58 | 2f 2f 27 20 3e 20 24 4f |d 's/^XX|//' > $O|
|00000fa0| 55 54 20 3c 3c 27 40 2f | 2f 45 2a 4f 2a 46 20 74 |UT <<'@/|/E*O*F t|
|00000fb0| 61 72 67 2e 63 2f 2f 27 | 0a 58 58 23 69 6e 63 6c |arg.c//'|.XX#incl|
|00000fc0| 75 64 65 20 3c 73 74 64 | 69 6f 2e 68 3e 0a 0a 58 |ude <std|io.h>..X|
|00000fd0| 58 23 64 65 66 69 6e 65 | 20 4e 41 4d 53 49 5a 20 |X#define| NAMSIZ |
|00000fe0| 31 30 30 0a 58 58 73 74 | 72 75 63 74 20 6d 61 74 |100.XXst|ruct mat|
|00000ff0| 63 68 65 73 20 7b 0a 58 | 58 09 69 6e 74 20 6f 66 |ches {.X|X.int of|
|00001000| 66 73 65 74 3b 0a 58 58 | 09 63 68 61 72 20 76 61 |fset;.XX|.char va|
|00001010| 6c 75 65 3b 0a 58 58 7d | 20 6d 61 74 63 68 65 73 |lue;.XX}| matches|
|00001020| 5b 5d 20 3d 20 7b 0a 58 | 58 09 4e 41 4d 53 49 5a |[] = {.X|X.NAMSIZ|
|00001030| 2b 36 2c 09 27 20 27 2c | 0a 58 58 09 4e 41 4d 53 |+6,.' ',|.XX.NAMS|
|00001040| 49 5a 2b 37 2c 09 27 5c | 30 27 2c 0a 58 58 09 4e |IZ+7,.'\|0',.XX.N|
|00001050| 41 4d 53 49 5a 2b 38 2b | 36 2c 09 27 20 27 2c 0a |AMSIZ+8+|6,.' ',.|
|00001060| 58 58 09 4e 41 4d 53 49 | 5a 2b 38 2b 37 2c 09 27 |XX.NAMSI|Z+8+7,.'|
|00001070| 5c 30 27 2c 0a 58 58 09 | 4e 41 4d 53 49 5a 2b 31 |\0',.XX.|NAMSIZ+1|
|00001080| 36 2b 36 2c 09 27 20 27 | 2c 0a 58 58 09 4e 41 4d |6+6,.' '|,.XX.NAM|
|00001090| 53 49 5a 2b 31 36 2b 37 | 2c 09 27 5c 30 27 2c 0a |SIZ+16+7|,.'\0',.|
|000010a0| 58 58 09 4e 41 4d 53 49 | 5a 2b 32 34 2b 31 31 2c |XX.NAMSI|Z+24+11,|
|000010b0| 09 27 20 27 2c 0a 58 58 | 09 4e 41 4d 53 49 5a 2b |.' ',.XX|.NAMSIZ+|
|000010c0| 33 36 2b 31 31 2c 09 27 | 20 27 2c 0a 58 58 09 4e |36+11,.'| ',.XX.N|
|000010d0| 41 4d 53 49 5a 2b 34 38 | 2b 36 2c 09 27 5c 30 27 |AMSIZ+48|+6,.'\0'|
|000010e0| 2c 0a 58 58 09 30 2c 09 | 09 30 2c 0a 58 58 7d 3b |,.XX.0,.|.0,.XX};|
|000010f0| 0a 0a 58 58 69 6e 74 0a | 58 58 69 73 74 61 72 28 |..XXint.|XXistar(|
|00001100| 62 6c 6f 63 6b 29 0a 58 | 58 63 68 61 72 20 2a 62 |block).X|Xchar *b|
|00001110| 6c 6f 63 6b 3b 0a 58 58 | 7b 0a 58 58 09 69 6e 74 |lock;.XX|{.XX.int|
|00001120| 20 6c 6f 6f 70 3b 0a 0a | 58 58 09 66 6f 72 20 28 | loop;..|XX.for (|
|00001130| 6c 6f 6f 70 20 3d 20 30 | 3b 20 6d 61 74 63 68 65 |loop = 0|; matche|
|00001140| 73 5b 6c 6f 6f 70 5d 2e | 6f 66 66 73 65 74 20 21 |s[loop].|offset !|
|00001150| 3d 20 30 3b 20 6c 6f 6f | 70 2b 2b 29 0a 58 58 09 |= 0; loo|p++).XX.|
|00001160| 09 69 66 20 28 62 6c 6f | 63 6b 5b 6d 61 74 63 68 |.if (blo|ck[match|
|00001170| 65 73 5b 6c 6f 6f 70 5d | 2e 6f 66 66 73 65 74 5d |es[loop]|.offset]|
|00001180| 20 21 3d 20 6d 61 74 63 | 68 65 73 5b 6c 6f 6f 70 | != matc|hes[loop|
|00001190| 5d 2e 76 61 6c 75 65 29 | 0a 58 58 09 09 09 72 65 |].value)|.XX...re|
|000011a0| 74 75 72 6e 28 30 29 3b | 0a 58 58 09 72 65 74 75 |turn(0);|.XX.retu|
|000011b0| 72 6e 28 31 29 3b 0a 58 | 58 7d 0a 0a 58 58 63 68 |rn(1);.X|X}..XXch|
|000011c0| 61 72 20 62 75 66 5b 31 | 30 32 34 30 5d 3b 0a 58 |ar buf[1|0240];.X|
|000011d0| 58 69 6e 74 20 62 61 64 | 3b 0a 58 58 69 6e 74 20 |Xint bad|;.XXint |
|000011e0| 6e 6c 65 66 74 20 3d 20 | 30 3b 0a 58 58 69 6e 74 |nleft = |0;.XXint|
|000011f0| 20 77 68 69 63 68 6e 6f | 77 3b 0a 0a 58 58 69 6e | whichno|w;..XXin|
|00001200| 74 20 6f 70 65 6e 65 64 | 20 3d 20 30 3b 0a 58 58 |t opened| = 0;.XX|
|00001210| 69 6e 74 20 66 3b 0a 58 | 58 6c 6f 6e 67 20 6e 77 |int f;.X|Xlong nw|
|00001220| 72 69 74 65 3b 0a 0a 58 | 58 6d 61 69 6e 28 61 72 |rite;..X|Xmain(ar|
|00001230| 67 63 2c 20 61 72 67 76 | 29 0a 58 58 69 6e 74 20 |gc, argv|).XXint |
|00001240| 61 72 67 63 3b 0a 58 58 | 63 68 61 72 20 2a 2a 61 |argc;.XX|char **a|
|00001250| 72 67 76 3b 0a 58 58 7b | 0a 58 58 09 69 6e 74 20 |rgv;.XX{|.XX.int |
|00001260| 6c 6f 6f 70 3b 0a 58 58 | 09 63 68 61 72 20 2a 62 |loop;.XX|.char *b|
|00001270| 6c 6f 63 6b 3b 0a 58 58 | 09 65 78 74 65 72 6e 20 |lock;.XX|.extern |
|00001280| 63 68 61 72 20 2a 72 65 | 61 64 62 6c 6f 63 6b 28 |char *re|adblock(|
|00001290| 29 3b 0a 0a 58 58 09 62 | 61 64 20 3d 20 30 3b 0a |);..XX.b|ad = 0;.|
|000012a0| 0a 58 58 09 66 6f 72 28 | 3b 3b 29 20 7b 0a 58 58 |.XX.for(|;;) {.XX|
|000012b0| 09 09 62 6c 6f 63 6b 20 | 3d 20 72 65 61 64 62 6c |..block |= readbl|
|000012c0| 6f 63 6b 28 30 29 3b 0a | 0a 58 58 09 09 69 66 20 |ock(0);.|.XX..if |
|000012d0| 28 62 6c 6f 63 6b 20 21 | 3d 20 4e 55 4c 4c 29 0a |(block !|= NULL).|
|000012e0| 58 58 09 09 09 64 6f 62 | 6c 6f 63 6b 28 62 6c 6f |XX...dob|lock(blo|
|000012f0| 63 6b 2c 20 61 72 67 63 | 2c 20 61 72 67 76 29 3b |ck, argc|, argv);|
|00001300| 0a 58 58 09 7d 0a 58 58 | 7d 0a 0a 58 58 64 6f 62 |.XX.}.XX|}..XXdob|
|00001310| 6c 6f 63 6b 28 62 6c 6f | 63 6b 2c 20 61 72 67 63 |lock(blo|ck, argc|
|00001320| 2c 20 61 72 67 76 29 0a | 58 58 63 68 61 72 20 2a |, argv).|XXchar *|
|00001330| 62 6c 6f 63 6b 3b 0a 58 | 58 69 6e 74 20 61 72 67 |block;.X|Xint arg|
|00001340| 63 3b 0a 58 58 63 68 61 | 72 20 2a 2a 61 72 67 76 |c;.XXcha|r **argv|
|00001350| 3b 0a 58 58 7b 0a 58 58 | 09 69 6e 74 20 63 6f 75 |;.XX{.XX|.int cou|
|00001360| 6e 74 3b 0a 0a 58 58 09 | 69 66 20 28 69 73 74 61 |nt;..XX.|if (ista|
|00001370| 72 28 62 6c 6f 63 6b 29 | 29 20 7b 0a 58 58 09 09 |r(block)|) {.XX..|
|00001380| 69 66 20 28 6f 70 65 6e | 65 64 29 20 7b 0a 58 58 |if (open|ed) {.XX|
|00001390| 09 09 09 70 72 69 6e 74 | 66 28 22 2d 2d 2d 20 70 |...print|f("--- p|
|000013a0| 72 65 6d 61 74 75 72 65 | 20 65 6e 64 5c 6e 22 29 |remature| end\n")|
|000013b0| 3b 0a 58 58 09 09 09 63 | 6c 6f 73 65 28 66 29 3b |;.XX...c|lose(f);|
|000013c0| 0a 58 58 09 09 09 6f 70 | 65 6e 65 64 20 3d 20 30 |.XX...op|ened = 0|
|000013d0| 3b 0a 58 58 09 09 7d 0a | 58 58 09 09 69 66 20 28 |;.XX..}.|XX..if (|
|000013e0| 6d 61 74 63 68 28 62 6c | 6f 63 6b 2c 20 61 72 67 |match(bl|ock, arg|
|000013f0| 63 2c 20 61 72 67 76 29 | 29 20 7b 0a 58 58 09 09 |c, argv)|) {.XX..|
|00001400| 09 66 20 3d 20 63 72 65 | 61 74 28 62 6c 6f 63 6b |.f = cre|at(block|
|00001410| 2c 20 30 36 36 36 29 3b | 0a 58 58 09 09 09 69 66 |, 0666);|.XX...if|
|00001420| 20 28 66 20 3c 20 30 29 | 0a 58 58 09 09 09 09 70 | (f < 0)|.XX....p|
|00001430| 72 69 6e 74 66 28 22 2d | 2d 2d 20 75 6e 61 62 6c |rintf("-|-- unabl|
|00001440| 65 20 74 6f 20 63 72 65 | 61 74 65 20 25 73 5c 6e |e to cre|ate %s\n|
|00001450| 22 2c 20 62 6c 6f 63 6b | 29 3b 0a 58 58 09 09 09 |", block|);.XX...|
|00001460| 65 6c 73 65 20 7b 0a 58 | 58 09 09 09 09 6f 70 65 |else {.X|X....ope|
|00001470| 6e 65 64 20 3d 20 31 3b | 0a 58 58 09 09 09 09 73 |ned = 1;|.XX....s|
|00001480| 73 63 61 6e 66 28 62 6c | 6f 63 6b 2b 4e 41 4d 53 |scanf(bl|ock+NAMS|
|00001490| 49 5a 2b 32 34 2c 20 22 | 25 6c 6f 22 2c 20 26 6e |IZ+24, "|%lo", &n|
|000014a0| 77 72 69 74 65 29 3b 0a | 58 58 09 09 09 09 70 72 |write);.|XX....pr|
|000014b0| 69 6e 74 66 28 22 2d 2d | 2d 20 72 65 61 64 69 6e |intf("--|- readin|
|000014c0| 67 20 25 73 20 25 6c 64 | 5c 6e 22 2c 20 62 6c 6f |g %s %ld|\n", blo|
|000014d0| 63 6b 2c 20 6e 77 72 69 | 74 65 29 3b 0a 58 58 09 |ck, nwri|te);.XX.|
|000014e0| 09 09 09 69 66 20 28 6e | 77 72 69 74 65 20 3c 3d |...if (n|write <=|
|000014f0| 20 30 29 20 7b 0a 58 58 | 09 09 09 09 09 63 6c 6f | 0) {.XX|.....clo|
|00001500| 73 65 28 66 29 3b 0a 58 | 58 09 09 09 09 09 6f 70 |se(f);.X|X.....op|
|00001510| 65 6e 65 64 20 3d 20 30 | 3b 0a 58 58 09 09 09 09 |ened = 0|;.XX....|
|00001520| 09 70 72 69 6e 74 66 28 | 22 2d 2d 2d 20 64 6f 6e |.printf(|"--- don|
|00001530| 65 5c 6e 22 29 3b 0a 58 | 58 09 09 09 09 7d 0a 58 |e\n");.X|X....}.X|
|00001540| 58 09 09 09 7d 0a 58 58 | 09 09 7d 0a 58 58 09 7d |X...}.XX|..}.XX.}|
|00001550| 20 65 6c 73 65 20 7b 0a | 58 58 09 09 69 66 20 28 | else {.|XX..if (|
|00001560| 6f 70 65 6e 65 64 29 20 | 7b 0a 58 58 09 09 09 63 |opened) |{.XX...c|
|00001570| 6f 75 6e 74 20 3d 20 28 | 6e 77 72 69 74 65 20 3e |ount = (|nwrite >|
|00001580| 20 35 31 32 29 20 3f 20 | 35 31 32 20 3a 20 28 69 | 512) ? |512 : (i|
|00001590| 6e 74 29 6e 77 72 69 74 | 65 3b 0a 58 58 09 09 09 |nt)nwrit|e;.XX...|
|000015a0| 77 72 69 74 65 28 66 2c | 20 62 6c 6f 63 6b 2c 20 |write(f,| block, |
|000015b0| 63 6f 75 6e 74 29 3b 0a | 58 58 09 09 09 6e 77 72 |count);.|XX...nwr|
|000015c0| 69 74 65 20 2d 3d 20 63 | 6f 75 6e 74 3b 0a 58 58 |ite -= c|ount;.XX|
|000015d0| 09 09 09 69 66 20 28 6e | 77 72 69 74 65 20 3c 3d |...if (n|write <=|
|000015e0| 20 30 29 20 7b 0a 58 58 | 09 09 09 09 6f 70 65 6e | 0) {.XX|....open|
|000015f0| 65 64 20 3d 20 30 3b 0a | 58 58 09 09 09 09 63 6c |ed = 0;.|XX....cl|
|00001600| 6f 73 65 28 66 29 3b 0a | 58 58 09 09 09 09 70 72 |ose(f);.|XX....pr|
|00001610| 69 6e 74 66 28 22 2d 2d | 2d 20 64 6f 6e 65 5c 6e |intf("--|- done\n|
|00001620| 22 29 3b 0a 58 58 09 09 | 09 7d 0a 58 58 09 09 7d |");.XX..|.}.XX..}|
|00001630| 0a 58 58 09 7d 0a 58 58 | 7d 0a 0a 58 58 69 6e 74 |.XX.}.XX|}..XXint|
|00001640| 0a 58 58 6d 61 74 63 68 | 28 73 2c 20 61 72 67 63 |.XXmatch|(s, argc|
|00001650| 2c 20 61 72 67 76 29 0a | 58 58 63 68 61 72 20 2a |, argv).|XXchar *|
|00001660| 73 3b 0a 58 58 69 6e 74 | 20 61 72 67 63 3b 0a 58 |s;.XXint| argc;.X|
|00001670| 58 63 68 61 72 20 2a 2a | 61 72 67 76 3b 0a 58 58 |Xchar **|argv;.XX|
|00001680| 7b 0a 58 58 09 69 6e 74 | 20 69 3b 0a 58 58 09 69 |{.XX.int| i;.XX.i|
|00001690| 6e 74 20 63 3b 0a 0a 58 | 58 09 66 6f 72 20 28 69 |nt c;..X|X.for (i|
|000016a0| 20 3d 20 31 3b 20 69 20 | 3c 20 61 72 67 63 3b 20 | = 1; i |< argc; |
|000016b0| 69 2b 2b 29 20 7b 0a 58 | 58 09 09 69 66 20 28 73 |i++) {.X|X..if (s|
|000016c0| 74 72 6e 63 6d 70 28 73 | 2c 20 61 72 67 76 5b 69 |trncmp(s|, argv[i|
|000016d0| 5d 2c 20 73 74 72 6c 65 | 6e 28 61 72 67 76 5b 69 |], strle|n(argv[i|
|000016e0| 5d 29 29 20 3d 3d 20 30 | 29 20 7b 0a 58 58 09 09 |])) == 0|) {.XX..|
|000016f0| 09 63 20 3d 20 73 5b 73 | 74 72 6c 65 6e 28 61 72 |.c = s[s|trlen(ar|
|00001700| 67 76 5b 69 5d 29 5d 3b | 0a 58 58 09 09 09 69 66 |gv[i])];|.XX...if|
|00001710| 20 28 63 20 3d 3d 20 27 | 5c 30 27 20 7c 7c 20 63 | (c == '|\0' || c|
|00001720| 20 3d 3d 20 27 2f 27 29 | 0a 58 58 09 09 09 09 72 | == '/')|.XX....r|
|00001730| 65 74 75 72 6e 28 31 29 | 3b 0a 58 58 09 09 7d 0a |eturn(1)|;.XX..}.|
|00001740| 58 58 09 7d 0a 58 58 09 | 72 65 74 75 72 6e 28 30 |XX.}.XX.|return(0|
|00001750| 29 3b 0a 58 58 7d 0a 0a | 58 58 63 68 61 72 20 2a |);.XX}..|XXchar *|
|00001760| 0a 58 58 72 65 61 64 62 | 6c 6f 63 6b 28 64 65 73 |.XXreadb|lock(des|
|00001770| 63 29 0a 58 58 69 6e 74 | 20 64 65 73 63 3b 0a 58 |c).XXint| desc;.X|
|00001780| 58 7b 0a 58 58 09 69 6e | 74 20 63 6f 75 6e 74 3b |X{.XX.in|t count;|
|00001790| 0a 0a 58 58 09 69 66 20 | 28 6e 6c 65 66 74 20 3e |..XX.if |(nleft >|
|000017a0| 20 30 29 20 7b 0a 58 58 | 09 09 77 68 69 63 68 6e | 0) {.XX|..whichn|
|000017b0| 6f 77 2b 2b 3b 0a 58 58 | 09 09 6e 6c 65 66 74 2d |ow++;.XX|..nleft-|
|000017c0| 2d 3b 0a 58 58 09 09 72 | 65 74 75 72 6e 28 62 75 |-;.XX..r|eturn(bu|
|000017d0| 66 2b 77 68 69 63 68 6e | 6f 77 2a 35 31 32 29 3b |f+whichn|ow*512);|
|000017e0| 0a 58 58 09 7d 0a 0a 58 | 58 09 63 6f 75 6e 74 20 |.XX.}..X|X.count |
|000017f0| 3d 20 72 65 61 64 28 64 | 65 73 63 2c 20 62 75 66 |= read(d|esc, buf|
|00001800| 2c 20 28 69 6e 74 29 73 | 69 7a 65 6f 66 28 62 75 |, (int)s|izeof(bu|
|00001810| 66 29 29 3b 0a 58 58 09 | 69 66 20 28 63 6f 75 6e |f));.XX.|if (coun|
|00001820| 74 20 3c 3d 20 30 20 7c | 7c 20 63 6f 75 6e 74 25 |t <= 0 ||| count%|
|00001830| 35 31 32 20 21 3d 20 30 | 29 20 7b 0a 58 58 09 09 |512 != 0|) {.XX..|
|00001840| 69 66 20 28 63 6f 75 6e | 74 20 3d 3d 20 30 29 0a |if (coun|t == 0).|
|00001850| 58 58 09 09 09 70 72 69 | 6e 74 66 28 22 2d 2d 2d |XX...pri|ntf("---|
|00001860| 61 70 70 61 72 65 6e 74 | 20 45 4f 46 5c 6e 22 29 |apparent| EOF\n")|
|00001870| 3b 0a 58 58 09 09 65 6c | 73 65 0a 58 58 09 09 09 |;.XX..el|se.XX...|
|00001880| 70 72 69 6e 74 66 28 22 | 2d 2d 2d 65 72 72 6f 72 |printf("|---error|
|00001890| 5c 6e 22 29 3b 0a 58 58 | 09 09 69 66 20 28 62 61 |\n");.XX|..if (ba|
|000018a0| 64 20 3e 20 32 30 29 0a | 58 58 09 09 09 65 78 69 |d > 20).|XX...exi|
|000018b0| 74 28 31 29 3b 0a 58 58 | 09 09 62 61 64 2b 2b 3b |t(1);.XX|..bad++;|
|000018c0| 0a 58 58 09 09 72 65 74 | 75 72 6e 28 4e 55 4c 4c |.XX..ret|urn(NULL|
|000018d0| 29 3b 0a 58 58 09 7d 0a | 58 58 09 62 61 64 20 3d |);.XX.}.|XX.bad =|
|000018e0| 20 30 3b 0a 58 58 09 77 | 68 69 63 68 6e 6f 77 20 | 0;.XX.w|hichnow |
|000018f0| 3d 20 30 3b 0a 58 58 09 | 6e 6c 65 66 74 20 3d 20 |= 0;.XX.|nleft = |
|00001900| 63 6f 75 6e 74 2f 35 31 | 32 20 2d 20 31 3b 0a 58 |count/51|2 - 1;.X|
|00001910| 58 09 72 65 74 75 72 6e | 28 62 75 66 29 3b 0a 58 |X.return|(buf);.X|
|00001920| 58 7d 0a 40 2f 2f 45 2a | 4f 2a 46 20 74 61 72 67 |X}.@//E*|O*F targ|
|00001930| 2e 63 2f 2f 0a 63 68 6d | 6f 64 20 75 3d 72 77 2c |.c//.chm|od u=rw,|
|00001940| 67 3d 72 77 2c 6f 3d 72 | 77 20 24 4f 55 54 0a 20 |g=rw,o=r|w $OUT. |
|00001950| 0a 65 63 68 6f 20 78 20 | 2d 20 74 61 72 6c 2e 63 |.echo x |- tarl.c|
|00001960| 0a 69 66 20 74 65 73 74 | 20 2d 66 20 74 61 72 6c |.if test| -f tarl|
|00001970| 2e 63 20 3b 20 74 68 65 | 6e 0a 20 20 20 20 65 63 |.c ; the|n. ec|
|00001980| 68 6f 20 74 61 72 6c 2e | 63 20 65 78 69 73 74 73 |ho tarl.|c exists|
|00001990| 2c 20 70 75 74 74 69 6e | 67 20 6f 75 74 70 75 74 |, puttin|g output|
|000019a0| 20 69 6e 20 24 24 74 61 | 72 6c 2e 63 0a 20 20 20 | in $$ta|rl.c. |
|000019b0| 20 4f 55 54 3d 24 24 74 | 61 72 6c 2e 63 0a 20 20 | OUT=$$t|arl.c. |
|000019c0| 20 20 53 54 41 54 55 53 | 3d 31 0a 65 6c 73 65 0a | STATUS|=1.else.|
|000019d0| 20 20 20 20 4f 55 54 3d | 74 61 72 6c 2e 63 0a 66 | OUT=|tarl.c.f|
|000019e0| 69 0a 73 65 64 20 27 73 | 2f 5e 58 58 2f 2f 27 20 |i.sed 's|/^XX//' |
|000019f0| 3e 20 24 4f 55 54 20 3c | 3c 27 40 2f 2f 45 2a 4f |> $OUT <|<'@//E*O|
|00001a00| 2a 46 20 74 61 72 6c 2e | 63 2f 2f 27 0a 58 58 23 |*F tarl.|c//'.XX#|
|00001a10| 69 6e 63 6c 75 64 65 20 | 3c 73 74 64 69 6f 2e 68 |include |<stdio.h|
|00001a20| 3e 0a 0a 58 58 23 64 65 | 66 69 6e 65 20 4e 41 4d |>..XX#de|fine NAM|
|00001a30| 53 49 5a 20 31 30 30 0a | 58 58 73 74 72 75 63 74 |SIZ 100.|XXstruct|
|00001a40| 20 6d 61 74 63 68 65 73 | 20 7b 0a 58 58 09 69 6e | matches| {.XX.in|
|00001a50| 74 20 6f 66 66 73 65 74 | 3b 0a 58 58 09 63 68 61 |t offset|;.XX.cha|
|00001a60| 72 20 76 61 6c 75 65 3b | 0a 58 58 7d 20 6d 61 74 |r value;|.XX} mat|
|00001a70| 63 68 65 73 5b 5d 20 3d | 20 7b 0a 58 58 09 4e 41 |ches[] =| {.XX.NA|
|00001a80| 4d 53 49 5a 2b 36 2c 09 | 27 20 27 2c 0a 58 58 09 |MSIZ+6,.|' ',.XX.|
|00001a90| 4e 41 4d 53 49 5a 2b 37 | 2c 09 27 5c 30 27 2c 0a |NAMSIZ+7|,.'\0',.|
|00001aa0| 58 58 09 4e 41 4d 53 49 | 5a 2b 38 2b 36 2c 09 27 |XX.NAMSI|Z+8+6,.'|
|00001ab0| 20 27 2c 0a 58 58 09 4e | 41 4d 53 49 5a 2b 38 2b | ',.XX.N|AMSIZ+8+|
|00001ac0| 37 2c 09 27 5c 30 27 2c | 0a 58 58 09 4e 41 4d 53 |7,.'\0',|.XX.NAMS|
|00001ad0| 49 5a 2b 31 36 2b 36 2c | 09 27 20 27 2c 0a 58 58 |IZ+16+6,|.' ',.XX|
|00001ae0| 09 4e 41 4d 53 49 5a 2b | 31 36 2b 37 2c 09 27 5c |.NAMSIZ+|16+7,.'\|
|00001af0| 30 27 2c 0a 58 58 09 4e | 41 4d 53 49 5a 2b 32 34 |0',.XX.N|AMSIZ+24|
|00001b00| 2b 31 31 2c 09 27 20 27 | 2c 0a 58 58 09 4e 41 4d |+11,.' '|,.XX.NAM|
|00001b10| 53 49 5a 2b 33 36 2b 31 | 31 2c 09 27 20 27 2c 0a |SIZ+36+1|1,.' ',.|
|00001b20| 58 58 09 4e 41 4d 53 49 | 5a 2b 34 38 2b 36 2c 09 |XX.NAMSI|Z+48+6,.|
|00001b30| 27 5c 30 27 2c 0a 58 58 | 09 30 2c 09 09 30 2c 0a |'\0',.XX|.0,..0,.|
|00001b40| 58 58 7d 3b 0a 0a 58 58 | 69 6e 74 0a 58 58 69 73 |XX};..XX|int.XXis|
|00001b50| 74 61 72 28 62 6c 6f 63 | 6b 29 0a 58 58 63 68 61 |tar(bloc|k).XXcha|
|00001b60| 72 20 2a 62 6c 6f 63 6b | 3b 0a 58 58 7b 0a 58 58 |r *block|;.XX{.XX|
|00001b70| 09 69 6e 74 20 6c 6f 6f | 70 3b 0a 0a 58 58 09 66 |.int loo|p;..XX.f|
|00001b80| 6f 72 20 28 6c 6f 6f 70 | 20 3d 20 30 3b 20 6d 61 |or (loop| = 0; ma|
|00001b90| 74 63 68 65 73 5b 6c 6f | 6f 70 5d 2e 6f 66 66 73 |tches[lo|op].offs|
|00001ba0| 65 74 20 21 3d 20 30 3b | 20 6c 6f 6f 70 2b 2b 29 |et != 0;| loop++)|
|00001bb0| 0a 58 58 09 09 69 66 20 | 28 62 6c 6f 63 6b 5b 6d |.XX..if |(block[m|
|00001bc0| 61 74 63 68 65 73 5b 6c | 6f 6f 70 5d 2e 6f 66 66 |atches[l|oop].off|
|00001bd0| 73 65 74 5d 20 21 3d 20 | 6d 61 74 63 68 65 73 5b |set] != |matches[|
|00001be0| 6c 6f 6f 70 5d 2e 76 61 | 6c 75 65 29 0a 58 58 09 |loop].va|lue).XX.|
|00001bf0| 09 09 72 65 74 75 72 6e | 28 30 29 3b 0a 58 58 09 |..return|(0);.XX.|
|00001c00| 72 65 74 75 72 6e 28 31 | 29 3b 0a 58 58 7d 0a 0a |return(1|);.XX}..|
|00001c10| 58 58 63 68 61 72 20 62 | 75 66 5b 31 30 32 34 30 |XXchar b|uf[10240|
|00001c20| 5d 3b 0a 58 58 69 6e 74 | 20 62 61 64 3b 0a 58 58 |];.XXint| bad;.XX|
|00001c30| 69 6e 74 20 6e 6c 65 66 | 74 20 3d 20 30 3b 0a 58 |int nlef|t = 0;.X|
|00001c40| 58 69 6e 74 20 77 68 69 | 63 68 6e 6f 77 3b 0a 0a |Xint whi|chnow;..|
|00001c50| 58 58 6d 61 69 6e 28 29 | 0a 58 58 7b 0a 58 58 09 |XXmain()|.XX{.XX.|
|00001c60| 69 6e 74 20 6c 6f 6f 70 | 3b 0a 58 58 09 69 6e 74 |int loop|;.XX.int|
|00001c70| 20 64 69 72 3b 0a 58 58 | 09 63 68 61 72 20 2a 62 | dir;.XX|.char *b|
|00001c80| 6c 6f 63 6b 3b 0a 58 58 | 09 65 78 74 65 72 6e 20 |lock;.XX|.extern |
|00001c90| 63 68 61 72 20 2a 72 65 | 61 64 62 6c 6f 63 6b 28 |char *re|adblock(|
|00001ca0| 29 3b 0a 0a 58 58 09 62 | 61 64 20 3d 20 30 3b 0a |);..XX.b|ad = 0;.|
|00001cb0| 0a 58 58 09 66 6f 72 28 | 3b 3b 29 20 7b 0a 58 58 |.XX.for(|;;) {.XX|
|00001cc0| 09 09 62 6c 6f 63 6b 20 | 3d 20 72 65 61 64 62 6c |..block |= readbl|
|00001cd0| 6f 63 6b 28 30 29 3b 0a | 0a 58 58 09 09 69 66 20 |ock(0);.|.XX..if |
|00001ce0| 28 62 6c 6f 63 6b 20 21 | 3d 20 4e 55 4c 4c 20 26 |(block !|= NULL &|
|00001cf0| 26 20 69 73 74 61 72 28 | 62 6c 6f 63 6b 29 29 0a |& istar(|block)).|
|00001d00| 58 58 09 09 09 70 72 69 | 6e 74 66 28 22 25 73 5c |XX...pri|ntf("%s\|
|00001d10| 6e 22 2c 20 62 6c 6f 63 | 6b 29 3b 0a 58 58 09 7d |n", bloc|k);.XX.}|
|00001d20| 0a 58 58 7d 0a 0a 58 58 | 63 68 61 72 20 2a 0a 58 |.XX}..XX|char *.X|
|00001d30| 58 72 65 61 64 62 6c 6f | 63 6b 28 64 65 73 63 29 |Xreadblo|ck(desc)|
|00001d40| 0a 58 58 69 6e 74 20 64 | 65 73 63 3b 0a 58 58 7b |.XXint d|esc;.XX{|
|00001d50| 0a 58 58 09 69 6e 74 20 | 63 6f 75 6e 74 3b 0a 0a |.XX.int |count;..|
|00001d60| 58 58 09 69 66 20 28 6e | 6c 65 66 74 20 3e 20 30 |XX.if (n|left > 0|
|00001d70| 29 20 7b 0a 58 58 09 09 | 77 68 69 63 68 6e 6f 77 |) {.XX..|whichnow|
|00001d80| 2b 2b 3b 0a 58 58 09 09 | 6e 6c 65 66 74 2d 2d 3b |++;.XX..|nleft--;|
|00001d90| 0a 58 58 09 09 72 65 74 | 75 72 6e 28 62 75 66 2b |.XX..ret|urn(buf+|
|00001da0| 77 68 69 63 68 6e 6f 77 | 2a 35 31 32 29 3b 0a 58 |whichnow|*512);.X|
|00001db0| 58 09 7d 0a 0a 58 58 09 | 63 6f 75 6e 74 20 3d 20 |X.}..XX.|count = |
|00001dc0| 72 65 61 64 28 64 65 73 | 63 2c 20 62 75 66 2c 20 |read(des|c, buf, |
|00001dd0| 28 69 6e 74 29 73 69 7a | 65 6f 66 28 62 75 66 29 |(int)siz|eof(buf)|
|00001de0| 29 3b 0a 58 58 09 69 66 | 20 28 63 6f 75 6e 74 20 |);.XX.if| (count |
|00001df0| 3c 3d 20 30 20 7c 7c 20 | 63 6f 75 6e 74 25 35 31 |<= 0 || |count%51|
|00001e00| 32 20 21 3d 20 30 29 20 | 7b 0a 58 58 09 09 69 66 |2 != 0) |{.XX..if|
|00001e10| 20 28 63 6f 75 6e 74 20 | 3d 3d 20 30 29 0a 58 58 | (count |== 0).XX|
|00001e20| 09 09 09 70 72 69 6e 74 | 66 28 22 2d 2d 2d 61 70 |...print|f("---ap|
|00001e30| 70 61 72 65 6e 74 20 45 | 4f 46 5c 6e 22 29 3b 0a |parent E|OF\n");.|
|00001e40| 58 58 09 09 65 6c 73 65 | 0a 58 58 09 09 09 70 72 |XX..else|.XX...pr|
|00001e50| 69 6e 74 66 28 22 2d 2d | 2d 65 72 72 6f 72 5c 6e |intf("--|-error\n|
|00001e60| 22 29 3b 0a 58 58 09 09 | 69 66 20 28 62 61 64 20 |");.XX..|if (bad |
|00001e70| 3e 20 32 30 29 0a 58 58 | 09 09 09 65 78 69 74 28 |> 20).XX|...exit(|
|00001e80| 31 29 3b 0a 58 58 09 09 | 62 61 64 2b 2b 3b 0a 58 |1);.XX..|bad++;.X|
|00001e90| 58 09 09 72 65 74 75 72 | 6e 28 4e 55 4c 4c 29 3b |X..retur|n(NULL);|
|00001ea0| 0a 58 58 09 7d 0a 58 58 | 09 62 61 64 20 3d 20 30 |.XX.}.XX|.bad = 0|
|00001eb0| 3b 0a 58 58 09 77 68 69 | 63 68 6e 6f 77 20 3d 20 |;.XX.whi|chnow = |
|00001ec0| 30 3b 0a 58 58 09 6e 6c | 65 66 74 20 3d 20 63 6f |0;.XX.nl|eft = co|
|00001ed0| 75 6e 74 2f 35 31 32 20 | 2d 20 31 3b 0a 58 58 09 |unt/512 |- 1;.XX.|
|00001ee0| 72 65 74 75 72 6e 28 62 | 75 66 29 3b 0a 58 58 7d |return(b|uf);.XX}|
|00001ef0| 0a 40 2f 2f 45 2a 4f 2a | 46 20 74 61 72 6c 2e 63 |.@//E*O*|F tarl.c|
|00001f00| 2f 2f 0a 63 68 6d 6f 64 | 20 75 3d 72 77 2c 67 3d |//.chmod| u=rw,g=|
|00001f10| 72 77 2c 6f 3d 72 77 20 | 24 4f 55 54 0a 20 0a 65 |rw,o=rw |$OUT. .e|
|00001f20| 63 68 6f 20 49 6e 73 70 | 65 63 74 69 6e 67 20 66 |cho Insp|ecting f|
|00001f30| 6f 72 20 64 61 6d 61 67 | 65 20 69 6e 20 74 72 61 |or damag|e in tra|
|00001f40| 6e 73 69 74 2e 2e 2e 0a | 74 65 6d 70 3d 2f 74 6d |nsit....|temp=/tm|
|00001f50| 70 2f 73 68 61 72 69 6e | 24 24 3b 20 64 74 65 6d |p/sharin|$$; dtem|
|00001f60| 70 3d 2f 74 6d 70 2f 73 | 68 61 72 6f 75 74 24 24 |p=/tmp/s|harout$$|
|00001f70| 0a 74 72 61 70 20 22 72 | 6d 20 2d 66 20 24 74 65 |.trap "r|m -f $te|
|00001f80| 6d 70 20 24 64 74 65 6d | 70 3b 20 65 78 69 74 22 |mp $dtem|p; exit"|
|00001f90| 20 30 20 31 20 32 20 33 | 20 31 35 0a 63 61 74 20 | 0 1 2 3| 15.cat |
|00001fa0| 3e 20 24 74 65 6d 70 20 | 3c 3c 5c 21 21 21 0a 20 |> $temp |<<\!!!. |
|00001fb0| 20 20 20 20 20 20 36 20 | 20 20 20 20 20 36 30 20 | 6 | 60 |
|00001fc0| 20 20 20 20 33 39 38 20 | 52 45 41 44 4d 45 0a 20 | 398 |README. |
|00001fd0| 20 20 20 20 20 31 35 20 | 20 20 20 20 20 34 38 20 | 15 | 48 |
|00001fe0| 20 20 20 20 32 39 35 20 | 4d 61 6b 65 66 69 6c 65 | 295 |Makefile|
|00001ff0| 0a 20 20 20 20 20 20 34 | 36 20 20 20 20 20 32 37 |. 4|6 27|
|00002000| 34 20 20 20 20 31 37 34 | 34 20 74 61 72 67 2e 31 |4 174|4 targ.1|
|00002010| 0a 20 20 20 20 20 31 34 | 37 20 20 20 20 20 33 32 |. 14|7 32|
|00002020| 39 20 20 20 20 32 31 34 | 38 20 74 61 72 67 2e 63 |9 214|8 targ.c|
|00002030| 0a 20 20 20 20 20 20 38 | 31 20 20 20 20 20 31 36 |. 8|1 16|
|00002040| 33 20 20 20 20 31 31 31 | 32 20 74 61 72 6c 2e 63 |3 111|2 tarl.c|
|00002050| 0a 20 20 20 20 20 32 39 | 35 20 20 20 20 20 38 37 |. 29|5 87|
|00002060| 34 20 20 20 20 35 36 39 | 37 20 74 6f 74 61 6c 0a |4 569|7 total.|
|00002070| 21 21 21 0a 77 63 20 24 | 46 49 4c 45 53 20 7c 20 |!!!.wc $|FILES | |
|00002080| 73 65 64 20 27 73 3d 5b | 5e 20 5d 2a 2f 3d 3d 27 |sed 's=[|^ ]*/=='|
|00002090| 20 7c 20 64 69 66 66 20 | 2d 62 20 24 74 65 6d 70 | | diff |-b $temp|
|000020a0| 20 2d 20 3e 24 64 74 65 | 6d 70 0a 69 66 20 74 65 | - >$dte|mp.if te|
|000020b0| 73 74 20 2d 73 20 24 64 | 74 65 6d 70 20 3b 20 74 |st -s $d|temp ; t|
|000020c0| 68 65 6e 0a 20 20 20 20 | 65 63 68 6f 20 22 4f 75 |hen. |echo "Ou|
|000020d0| 63 68 20 5b 64 69 66 66 | 20 6f 66 20 77 63 20 6f |ch [diff| of wc o|
|000020e0| 75 74 70 75 74 5d 3a 22 | 0a 20 20 20 20 63 61 74 |utput]:"|. cat|
|000020f0| 20 24 64 74 65 6d 70 0a | 20 20 20 20 53 54 41 54 | $dtemp.| STAT|
|00002100| 55 53 3d 31 0a 65 6c 69 | 66 20 74 65 73 74 20 24 |US=1.eli|f test $|
|00002110| 53 54 41 54 55 53 20 3d | 20 30 20 3b 20 74 68 65 |STATUS =| 0 ; the|
|00002120| 6e 0a 20 20 20 20 65 63 | 68 6f 20 22 4e 6f 20 70 |n. ec|ho "No p|
|00002130| 72 6f 62 6c 65 6d 73 20 | 66 6f 75 6e 64 2e 22 0a |roblems |found.".|
|00002140| 65 6c 73 65 0a 20 20 20 | 20 65 63 68 6f 20 22 57 |else. | echo "W|
|00002150| 41 52 4e 49 4e 47 20 2d | 2d 20 50 52 4f 42 4c 45 |ARNING -|- PROBLE|
|00002160| 4d 53 20 57 45 52 45 20 | 46 4f 55 4e 44 2e 2e 2e |MS WERE |FOUND...|
|00002170| 22 0a 66 69 0a 65 78 69 | 74 20 24 53 54 41 54 55 |".fi.exi|t $STATU|
|00002180| 53 0a | |S. | |
+--------+-------------------------+-------------------------+--------+--------+