home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume8 / checkfiles < prev    next >
SHell self-extracting ARchive  |  1989-11-02  |  13.5 KB

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).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file 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)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 4e 65 77 73 67 72 6f 75 | 70 73 3a 20 63 6f 6d 70 |Newsgrou|ps: comp|
|00000010| 2e 73 6f 75 72 63 65 73 | 2e 6d 69 73 63 0a 73 75 |.sources|.misc.su|
|00000020| 62 6a 65 63 74 3a 20 76 | 30 38 69 30 39 39 3a 20 |bject: v|08i099: |
|00000030| 63 68 65 63 6b 66 69 6c | 65 73 20 66 6f 72 20 63 |checkfil|es for c|
|00000040| 6f 6d 70 2e 73 6f 75 72 | 63 65 73 2e 6d 69 73 63 |omp.sour|ces.misc|
|00000050| 0a 66 72 6f 6d 3a 20 61 | 6c 6c 62 65 72 79 40 75 |.from: a|llbery@u|
|00000060| 75 6e 65 74 2e 55 55 2e | 4e 45 54 20 28 42 72 61 |unet.UU.|NET (Bra|
|00000070| 6e 64 6f 6e 20 53 2e 20 | 41 6c 6c 62 65 72 79 20 |ndon S. |Allbery |
|00000080| 2d 20 63 6f 6d 70 2e 73 | 6f 75 72 63 65 73 2e 6d |- comp.s|ources.m|
|00000090| 69 73 63 29 0a 52 65 70 | 6c 79 2d 54 6f 3a 20 6d |isc).Rep|ly-To: m|
|000000a0| 70 62 40 6f 73 66 2e 6f | 72 67 20 28 50 61 75 6c |pb@osf.o|rg (Paul|
|000000b0| 20 42 6c 61 63 6b 62 75 | 72 6e 29 0a 0a 50 6f 73 | Blackbu|rn)..Pos|
|000000c0| 74 69 6e 67 2d 6e 75 6d | 62 65 72 3a 20 56 6f 6c |ting-num|ber: Vol|
|000000d0| 75 6d 65 20 38 2c 20 49 | 73 73 75 65 20 39 39 0a |ume 8, I|ssue 99.|
|000000e0| 53 75 62 6d 69 74 74 65 | 64 2d 62 79 3a 20 6d 70 |Submitte|d-by: mp|
|000000f0| 62 40 6f 73 66 2e 6f 72 | 67 20 28 50 61 75 6c 20 |b@osf.or|g (Paul |
|00000100| 42 6c 61 63 6b 62 75 72 | 6e 29 0a 41 72 63 68 69 |Blackbur|n).Archi|
|00000110| 76 65 2d 6e 61 6d 65 3a | 20 63 68 65 63 6b 66 69 |ve-name:| checkfi|
|00000120| 6c 65 73 0a 0a 48 65 72 | 65 20 69 73 20 27 63 68 |les..Her|e is 'ch|
|00000130| 65 63 6b 66 69 6c 65 73 | 27 2c 20 61 20 73 63 72 |eckfiles|', a scr|
|00000140| 69 70 74 20 66 6f 72 20 | 6b 65 65 70 69 6e 67 20 |ipt for |keeping |
|00000150| 74 72 61 63 6b 20 6f 66 | 20 63 68 61 6e 67 65 73 |track of| changes|
|00000160| 20 74 6f 0a 66 69 6c 65 | 73 2e 20 53 79 73 74 65 | to.file|s. Syste|
|00000170| 6d 20 61 64 6d 69 6e 69 | 73 74 72 61 74 6f 72 73 |m admini|strators|
|00000180| 20 6d 61 79 20 66 69 6e | 64 20 74 68 69 73 20 75 | may fin|d this u|
|00000190| 73 65 66 75 6c 20 74 6f | 20 68 61 76 65 20 75 6e |seful to| have un|
|000001a0| 77 61 6e 74 65 64 0a 6f | 72 20 75 6e 65 78 70 65 |wanted.o|r unexpe|
|000001b0| 63 74 65 64 20 63 68 61 | 6e 67 65 73 20 74 6f 20 |cted cha|nges to |
|000001c0| 66 69 6c 65 73 20 72 65 | 70 6f 72 74 65 64 20 74 |files re|ported t|
|000001d0| 6f 20 74 68 65 6d 2e 0a | 0a 50 61 75 6c 20 42 6c |o them..|.Paul Bl|
|000001e0| 61 63 6b 62 75 72 6e 2c | 20 20 20 20 20 20 20 20 |ackburn,| |
|000001f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000200| 20 20 20 20 22 6c 69 76 | 65 20 66 72 65 65 20 6f | "liv|e free o|
|00000210| 72 20 64 69 65 2e 2e 2e | 22 0a 4f 70 65 6e 20 53 |r die...|".Open S|
|00000220| 6f 66 74 77 61 72 65 20 | 46 6f 75 6e 64 61 74 69 |oftware |Foundati|
|00000230| 6f 6e 2c 20 45 75 72 6f | 70 65 61 6e 20 44 65 76 |on, Euro|pean Dev|
|00000240| 65 6c 6f 70 6d 65 6e 74 | 2c 20 4d 75 6e 69 63 68 |elopment|, Munich|
|00000250| 2c 20 57 65 73 74 20 47 | 65 72 6d 61 6e 79 0a 6d |, West G|ermany.m|
|00000260| 61 69 6c 3a 20 6d 70 62 | 40 6f 73 66 2e 64 65 20 |ail: mpb|@osf.de |
|00000270| 49 6e 74 65 72 6e 65 74 | 3a 20 6d 70 62 40 6d 6e |Internet|: mpb@mn|
|00000280| 2e 6f 73 66 2e 6f 72 67 | 20 75 75 63 70 3a 20 2e |.osf.org| uucp: .|
|00000290| 2e 75 75 6e 65 74 21 6d | 63 76 61 78 21 75 6e 69 |.uunet!m|cvax!uni|
|000002a0| 64 6f 21 6f 73 66 6d 75 | 63 21 6d 70 62 0a 2d 2d |do!osfmu|c!mpb.--|
|000002b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 63 75 74 20 |--------|----cut |
|000002d0| 68 65 72 65 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 63 6f |here----|------co|
|000002e0| 75 70 65 20 69 63 69 2d | 2d 2d 2d 2d 2d 2d 2d 2d |upe ici-|--------|
|000002f0| 2d 2d 0a 23 21 20 2f 62 | 69 6e 2f 73 68 0a 23 20 |--.#! /b|in/sh.# |
|00000300| 54 68 69 73 20 69 73 20 | 61 20 73 68 65 6c 6c 20 |This is |a shell |
|00000310| 61 72 63 68 69 76 65 2c | 20 6d 65 61 6e 69 6e 67 |archive,| meaning|
|00000320| 3a 0a 23 20 31 2e 20 52 | 65 6d 6f 76 65 20 65 76 |:.# 1. R|emove ev|
|00000330| 65 72 79 74 68 69 6e 67 | 20 61 62 6f 76 65 20 74 |erything| above t|
|00000340| 68 65 20 23 21 20 2f 62 | 69 6e 2f 73 68 20 6c 69 |he #! /b|in/sh li|
|00000350| 6e 65 2e 0a 23 20 32 2e | 20 53 61 76 65 20 74 68 |ne..# 2.| Save th|
|00000360| 65 20 72 65 73 75 6c 74 | 69 6e 67 20 74 65 78 74 |e result|ing text|
|00000370| 20 69 6e 20 61 20 66 69 | 6c 65 2e 0a 23 20 33 2e | in a fi|le..# 3.|
|00000380| 20 45 78 65 63 75 74 65 | 20 74 68 65 20 66 69 6c | Execute| the fil|
|00000390| 65 20 77 69 74 68 20 2f | 62 69 6e 2f 73 68 20 28 |e with /|bin/sh (|
|000003a0| 6e 6f 74 20 63 73 68 29 | 20 74 6f 20 63 72 65 61 |not csh)| to crea|
|000003b0| 74 65 20 74 68 65 20 66 | 69 6c 65 73 3a 0a 23 09 |te the f|iles:.#.|
|000003c0| 63 68 65 63 6b 66 69 6c | 65 73 0a 23 20 54 68 69 |checkfil|es.# Thi|
|000003d0| 73 20 61 72 63 68 69 76 | 65 20 63 72 65 61 74 65 |s archiv|e create|
|000003e0| 64 3a 20 54 75 65 20 4f | 63 74 20 33 31 20 31 36 |d: Tue O|ct 31 16|
|000003f0| 3a 35 34 3a 33 39 20 31 | 39 38 39 0a 23 20 42 79 |:54:39 1|989.# By|
|00000400| 3a 09 50 61 75 6c 20 42 | 6c 61 63 6b 62 75 72 6e |:.Paul B|lackburn|
|00000410| 20 28 4f 70 65 6e 20 53 | 6f 66 74 77 61 72 65 20 | (Open S|oftware |
|00000420| 46 6f 75 6e 64 61 74 69 | 6f 6e 2c 20 45 75 72 6f |Foundati|on, Euro|
|00000430| 70 65 61 6e 20 44 65 76 | 65 6c 6f 70 6d 65 6e 74 |pean Dev|elopment|
|00000440| 2c 20 4d 75 6e 69 63 68 | 29 0a 65 78 70 6f 72 74 |, Munich|).export|
|00000450| 20 50 41 54 48 3b 20 50 | 41 54 48 3d 2f 62 69 6e | PATH; P|ATH=/bin|
|00000460| 3a 24 50 41 54 48 0a 69 | 66 20 74 65 73 74 20 21 |:$PATH.i|f test !|
|00000470| 20 2d 64 20 27 63 68 65 | 63 6b 66 69 6c 65 73 27 | -d 'che|ckfiles'|
|00000480| 0a 74 68 65 6e 0a 09 65 | 63 68 6f 20 73 68 61 72 |.then..e|cho shar|
|00000490| 3a 20 63 72 65 61 74 69 | 6e 67 20 64 69 72 65 63 |: creati|ng direc|
|000004a0| 74 6f 72 79 20 22 27 63 | 68 65 63 6b 66 69 6c 65 |tory "'c|heckfile|
|000004b0| 73 27 22 0a 09 6d 6b 64 | 69 72 20 27 63 68 65 63 |s'"..mkd|ir 'chec|
|000004c0| 6b 66 69 6c 65 73 27 0a | 66 69 0a 65 63 68 6f 20 |kfiles'.|fi.echo |
|000004d0| 73 68 61 72 3a 20 65 6e | 74 65 72 69 6e 67 20 64 |shar: en|tering d|
|000004e0| 69 72 65 63 74 6f 72 79 | 20 22 27 63 68 65 63 6b |irectory| "'check|
|000004f0| 66 69 6c 65 73 27 22 0a | 63 64 20 27 63 68 65 63 |files'".|cd 'chec|
|00000500| 6b 66 69 6c 65 73 27 0a | 65 63 68 6f 20 73 68 61 |kfiles'.|echo sha|
|00000510| 72 3a 20 65 78 74 72 61 | 63 74 69 6e 67 20 22 27 |r: extra|cting "'|
|00000520| 4d 61 6b 65 66 69 6c 65 | 27 22 20 27 28 38 35 20 |Makefile|'" '(85 |
|00000530| 63 68 61 72 61 63 74 65 | 72 73 29 27 0a 69 66 20 |characte|rs)'.if |
|00000540| 74 65 73 74 20 2d 66 20 | 27 4d 61 6b 65 66 69 6c |test -f |'Makefil|
|00000550| 65 27 0a 74 68 65 6e 0a | 09 65 63 68 6f 20 73 68 |e'.then.|.echo sh|
|00000560| 61 72 3a 20 77 69 6c 6c | 20 6e 6f 74 20 6f 76 65 |ar: will| not ove|
|00000570| 72 2d 77 72 69 74 65 20 | 65 78 69 73 74 69 6e 67 |r-write |existing|
|00000580| 20 66 69 6c 65 20 22 27 | 4d 61 6b 65 66 69 6c 65 | file "'|Makefile|
|00000590| 27 22 0a 65 6c 73 65 0a | 73 65 64 20 27 73 2f 5e |'".else.|sed 's/^|
|000005a0| 58 2f 2f 27 20 3c 3c 20 | 5c 53 48 41 52 5f 45 4f |X//' << |\SHAR_EO|
|000005b0| 46 20 3e 20 27 4d 61 6b | 65 66 69 6c 65 27 0a 58 |F > 'Mak|efile'.X|
|000005c0| 23 20 4d 61 6b 65 66 69 | 6c 65 20 74 6f 20 62 75 |# Makefi|le to bu|
|000005d0| 69 6c 64 20 66 74 79 70 | 65 0a 58 0a 58 66 74 79 |ild ftyp|e.X.Xfty|
|000005e0| 70 65 3a 09 66 74 79 70 | 65 2e 63 20 4d 61 6b 65 |pe:.ftyp|e.c Make|
|000005f0| 66 69 6c 65 0a 58 09 24 | 28 43 43 29 20 24 28 43 |file.X.$|(CC) $(C|
|00000600| 46 4c 41 47 53 29 20 2d | 6f 20 66 74 79 70 65 20 |FLAGS) -|o ftype |
|00000610| 66 74 79 70 65 2e 63 0a | 53 48 41 52 5f 45 4f 46 |ftype.c.|SHAR_EOF|
|00000620| 0a 66 69 20 23 20 65 6e | 64 20 6f 66 20 6f 76 65 |.fi # en|d of ove|
|00000630| 72 77 72 69 74 69 6e 67 | 20 63 68 65 63 6b 0a 65 |rwriting| check.e|
|00000640| 63 68 6f 20 73 68 61 72 | 3a 20 65 78 74 72 61 63 |cho shar|: extrac|
|00000650| 74 69 6e 67 20 22 27 52 | 45 41 44 4d 45 27 22 20 |ting "'R|EADME'" |
|00000660| 27 28 33 34 33 30 20 63 | 68 61 72 61 63 74 65 72 |'(3430 c|haracter|
|00000670| 73 29 27 0a 69 66 20 74 | 65 73 74 20 2d 66 20 27 |s)'.if t|est -f '|
|00000680| 52 45 41 44 4d 45 27 0a | 74 68 65 6e 0a 09 65 63 |README'.|then..ec|
|00000690| 68 6f 20 73 68 61 72 3a | 20 77 69 6c 6c 20 6e 6f |ho shar:| will no|
|000006a0| 74 20 6f 76 65 72 2d 77 | 72 69 74 65 20 65 78 69 |t over-w|rite exi|
|000006b0| 73 74 69 6e 67 20 66 69 | 6c 65 20 22 27 52 45 41 |sting fi|le "'REA|
|000006c0| 44 4d 45 27 22 0a 65 6c | 73 65 0a 73 65 64 20 27 |DME'".el|se.sed '|
|000006d0| 73 2f 5e 58 2f 2f 27 20 | 3c 3c 20 5c 53 48 41 52 |s/^X//' |<< \SHAR|
|000006e0| 5f 45 4f 46 20 3e 20 27 | 52 45 41 44 4d 45 27 0a |_EOF > '|README'.|
|000006f0| 58 49 6e 74 72 6f 64 75 | 63 74 69 6f 6e 3a 0a 58 |XIntrodu|ction:.X|
|00000700| 0a 58 63 68 65 63 6b 66 | 69 6c 65 73 20 69 73 20 |.Xcheckf|iles is |
|00000710| 61 20 73 68 65 6c 6c 73 | 63 72 69 70 74 20 74 6f |a shells|cript to|
|00000720| 20 63 68 65 63 6b 20 66 | 6f 72 20 63 68 61 6e 67 | check f|or chang|
|00000730| 65 73 20 74 6f 20 61 20 | 73 65 74 20 6f 66 0a 58 |es to a |set of.X|
|00000740| 66 69 6c 65 73 20 61 6e | 64 20 72 65 70 6f 72 74 |files an|d report|
|00000750| 20 64 69 66 66 65 72 65 | 6e 63 65 73 20 62 79 20 | differe|nces by |
|00000760| 6d 61 69 6c 2e 0a 58 0a | 58 50 72 6f 62 6c 65 6d |mail..X.|XProblem|
|00000770| 3a 0a 58 0a 58 49 20 77 | 61 6e 74 20 74 6f 20 6b |:.X.XI w|ant to k|
|00000780| 6e 6f 77 20 77 68 65 6e | 20 63 65 72 74 61 69 6e |now when| certain|
|00000790| 20 66 69 6c 65 73 20 68 | 61 76 65 20 62 65 65 6e | files h|ave been|
|000007a0| 20 63 68 61 6e 67 65 64 | 20 62 75 74 20 49 20 64 | changed| but I d|
|000007b0| 6f 6e 27 74 20 77 61 6e | 74 20 74 6f 0a 58 68 61 |on't wan|t to.Xha|
|000007c0| 76 65 20 74 6f 20 63 68 | 65 63 6b 20 74 68 65 6d |ve to ch|eck them|
|000007d0| 20 6f 75 74 20 6d 79 73 | 65 6c 66 20 62 65 63 61 | out mys|elf beca|
|000007e0| 75 73 65 20 69 74 20 74 | 61 6b 65 73 20 6d 65 20 |use it t|akes me |
|000007f0| 74 6f 6f 20 6c 6f 6e 67 | 2e 0a 58 0a 58 41 73 20 |too long|..X.XAs |
|00000800| 73 79 73 74 65 6d 73 20 | 61 64 6d 69 6e 69 73 74 |systems |administ|
|00000810| 72 61 74 6f 72 20 49 20 | 68 61 76 65 20 74 6f 20 |rator I |have to |
|00000820| 6b 6e 6f 77 20 69 66 20 | 2f 62 69 6e 2f 6c 6f 67 |know if |/bin/log|
|00000830| 69 6e 20 63 68 61 6e 67 | 65 73 0a 58 65 73 70 65 |in chang|es.Xespe|
|00000840| 63 69 61 6c 6c 79 20 69 | 66 20 49 20 64 69 64 20 |cially i|f I did |
|00000850| 6e 6f 74 20 63 68 61 6e | 67 65 20 69 74 21 0a 58 |not chan|ge it!.X|
|00000860| 0a 58 53 6f 6c 75 74 69 | 6f 6e 3a 0a 58 0a 58 48 |.XSoluti|on:.X.XH|
|00000870| 61 76 65 20 61 20 70 72 | 6f 67 72 61 6d 20 64 6f |ave a pr|ogram do|
|00000880| 20 74 68 65 20 63 68 65 | 63 6b 69 6e 67 20 66 6f | the che|cking fo|
|00000890| 72 20 6d 65 20 61 6e 64 | 20 6d 61 69 6c 20 6d 65 |r me and| mail me|
|000008a0| 20 74 68 65 20 63 68 61 | 6e 67 65 73 2e 0a 58 55 | the cha|nges..XU|
|000008b0| 73 65 20 61 20 6c 69 73 | 74 20 6f 66 20 66 69 6c |se a lis|t of fil|
|000008c0| 65 73 20 74 6f 20 62 65 | 20 63 68 65 63 6b 65 64 |es to be| checked|
|000008d0| 20 61 6e 64 20 6b 65 65 | 70 20 27 6f 72 69 67 69 | and kee|p 'origi|
|000008e0| 6e 61 6c 27 20 63 6f 70 | 69 65 73 20 3a 2d 29 0a |nal' cop|ies :-).|
|000008f0| 58 74 6f 20 63 68 65 63 | 6b 20 63 75 72 72 65 6e |Xto chec|k curren|
|00000900| 74 20 76 65 72 73 69 6f | 6e 73 20 61 67 61 69 6e |t versio|ns again|
|00000910| 73 74 2e 0a 58 0a 58 54 | 68 65 20 74 6f 6f 6c 73 |st..X.XT|he tools|
|00000920| 20 49 20 75 73 65 20 74 | 6f 20 64 6f 20 74 68 69 | I use t|o do thi|
|00000930| 73 20 61 72 65 3a 0a 58 | 0a 58 72 65 73 65 74 66 |s are:.X|.Xresetf|
|00000940| 69 6c 65 73 09 2d 20 55 | 70 64 61 74 65 20 74 68 |iles.- U|pdate th|
|00000950| 65 20 72 65 66 65 72 65 | 6e 63 65 20 63 6f 70 79 |e refere|nce copy|
|00000960| 20 6f 66 20 66 69 6c 65 | 73 0a 58 63 68 65 63 6b | of file|s.Xcheck|
|00000970| 66 69 6c 65 73 09 2d 20 | 66 69 6e 64 20 6f 75 74 |files.- |find out|
|00000980| 20 69 66 20 61 6e 79 20 | 63 68 61 6e 67 65 73 2c | if any |changes,|
|00000990| 20 6d 61 69 6c 20 74 68 | 65 20 72 65 73 75 6c 74 | mail th|e result|
|000009a0| 73 0a 58 66 74 79 70 65 | 09 09 2d 20 44 65 74 65 |s.Xftype|..- Dete|
|000009b0| 72 6d 69 6e 65 20 69 73 | 20 66 69 6c 65 20 69 73 |rmine is| file is|
|000009c0| 20 61 20 62 69 6e 61 72 | 79 20 28 6e 6f 74 20 64 | a binar|y (not d|
|000009d0| 69 66 66 27 61 62 6c 65 | 29 0a 58 0a 58 45 6e 76 |iff'able|).X.XEnv|
|000009e0| 69 72 6f 6e 6d 65 6e 74 | 3a 0a 58 0a 58 54 68 65 |ironment|:.X.XThe|
|000009f0| 73 65 20 42 6f 75 72 6e | 65 20 73 68 65 6c 6c 73 |se Bourn|e shells|
|00000a00| 63 72 69 70 74 73 20 68 | 61 76 65 20 62 65 65 6e |cripts h|ave been|
|00000a10| 20 74 65 73 74 65 64 20 | 75 6e 64 65 72 20 55 4c | tested |under UL|
|00000a20| 54 52 49 58 20 61 6e 64 | 0a 58 73 68 6f 75 6c 64 |TRIX and|.Xshould|
|00000a30| 20 28 6c 65 74 20 6d 65 | 20 6b 6e 6f 77 20 69 66 | (let me| know if|
|00000a40| 20 6f 74 68 65 72 77 69 | 73 65 29 20 72 75 6e 20 | otherwi|se) run |
|00000a50| 75 6e 64 65 72 20 6d 6f | 73 74 20 55 4e 49 58 65 |under mo|st UNIXe|
|00000a60| 73 2e 0a 58 54 68 65 20 | 74 6f 6f 6c 73 20 61 72 |s..XThe |tools ar|
|00000a70| 65 20 42 6f 75 72 6e 65 | 20 73 68 65 6c 6c 73 63 |e Bourne| shellsc|
|00000a80| 72 69 70 74 73 20 61 6e | 64 20 27 6d 61 6b 65 27 |ripts an|d 'make'|
|00000a90| 20 69 73 20 61 6c 73 6f | 20 75 73 65 64 2e 0a 58 | is also| used..X|
|00000aa0| 0a 58 48 6f 77 20 74 6f | 20 69 6e 73 74 61 6c 6c |.XHow to| install|
|00000ab0| 3a 0a 58 0a 58 61 29 20 | 72 75 6e 20 61 20 27 6d |:.X.Xa) |run a 'm|
|00000ac0| 61 6b 65 27 20 74 6f 20 | 63 6f 6d 70 69 6c 65 20 |ake' to |compile |
|00000ad0| 66 74 79 70 65 2e 63 2e | 0a 58 0a 58 62 29 20 45 |ftype.c.|.X.Xb) E|
|00000ae0| 64 69 74 20 74 68 65 20 | 66 69 6c 65 20 27 6c 69 |dit the |file 'li|
|00000af0| 73 74 27 20 74 6f 20 72 | 65 66 6c 65 63 74 20 74 |st' to r|eflect t|
|00000b00| 68 65 20 66 69 6c 65 73 | 20 79 6f 75 20 6e 65 65 |he files| you nee|
|00000b10| 64 20 74 6f 20 63 68 65 | 63 6b 2e 0a 58 20 20 20 |d to che|ck..X |
|00000b20| 49 20 68 61 76 65 6e 27 | 74 20 75 73 65 64 20 61 |I haven'|t used a|
|00000b30| 20 68 75 67 65 20 6c 69 | 73 74 20 79 65 74 2c 20 | huge li|st yet, |
|00000b40| 69 74 20 73 65 65 6d 73 | 20 61 20 67 6f 6f 64 20 |it seems| a good |
|00000b50| 69 64 65 61 20 74 6f 20 | 6b 65 65 70 20 74 68 65 |idea to |keep the|
|00000b60| 20 0a 58 20 20 20 6c 69 | 73 74 20 73 68 6f 72 74 | .X li|st short|
|00000b70| 2e 0a 58 0a 58 63 29 20 | 44 65 66 69 6e 65 20 77 |..X.Xc) |Define w|
|00000b80| 68 65 72 65 20 74 68 65 | 20 72 65 66 65 72 65 6e |here the| referen|
|00000b90| 63 65 20 63 6f 70 69 65 | 73 20 61 72 65 20 74 6f |ce copie|s are to|
|00000ba0| 20 62 65 20 68 65 6c 64 | 2e 20 45 64 69 74 20 62 | be held|. Edit b|
|00000bb0| 6f 74 68 0a 58 20 20 20 | 63 68 65 63 6b 66 69 6c |oth.X |checkfil|
|00000bc0| 65 73 20 61 6e 64 20 72 | 65 73 65 74 66 69 6c 65 |es and r|esetfile|
|00000bd0| 73 20 61 6e 64 20 63 68 | 61 6e 67 65 20 74 68 65 |s and ch|ange the|
|00000be0| 20 76 61 6c 75 65 20 6f | 66 20 42 41 53 45 20 74 | value o|f BASE t|
|00000bf0| 6f 0a 58 20 20 20 74 68 | 65 20 63 75 72 72 65 6e |o.X th|e curren|
|00000c00| 74 20 64 69 72 65 63 74 | 6f 72 79 2e 0a 58 0a 58 |t direct|ory..X.X|
|00000c10| 64 29 20 54 6f 20 61 76 | 6f 69 64 20 70 72 6f 62 |d) To av|oid prob|
|00000c20| 6c 65 6d 73 20 6f 66 20 | 63 68 65 63 6b 66 69 6c |lems of |checkfil|
|00000c30| 65 73 20 72 75 6e 6e 69 | 6e 67 20 6f 6e 20 74 68 |es runni|ng on th|
|00000c40| 65 20 77 72 6f 6e 67 20 | 68 6f 73 74 0a 58 20 20 |e wrong |host.X |
|00000c50| 20 65 64 69 74 20 62 6f | 74 68 20 63 68 65 63 6b | edit bo|th check|
|00000c60| 66 69 6c 65 73 20 61 6e | 64 20 72 65 73 65 74 66 |files an|d resetf|
|00000c70| 69 6c 65 73 20 61 6e 64 | 20 73 65 74 20 4d 41 53 |iles and| set MAS|
|00000c80| 54 45 52 20 74 6f 20 74 | 68 65 20 68 6f 73 74 6e |TER to t|he hostn|
|00000c90| 61 6d 65 0a 58 20 20 20 | 69 74 20 73 68 6f 75 6c |ame.X |it shoul|
|00000ca0| 64 20 6f 6e 6c 79 20 72 | 75 6e 20 6f 6e 2e 20 54 |d only r|un on. T|
|00000cb0| 68 65 72 65 20 77 61 73 | 20 61 20 70 72 6f 62 6c |here was| a probl|
|00000cc0| 65 6d 20 75 73 69 6e 67 | 20 63 68 65 63 6b 66 69 |em using| checkfi|
|00000cd0| 6c 65 73 20 69 6e 20 61 | 0a 58 20 20 20 63 6f 6e |les in a|.X con|
|00000ce0| 66 69 67 75 72 61 74 69 | 6f 6e 20 77 69 74 68 20 |figurati|on with |
|00000cf0| 6d 61 6e 79 20 77 6f 72 | 6b 73 74 61 74 69 6f 6e |many wor|kstation|
|00000d00| 73 20 73 68 61 72 69 6e | 67 20 74 68 65 20 73 61 |s sharin|g the sa|
|00000d10| 6d 65 20 28 72 65 6d 6f | 74 65 29 0a 58 20 20 20 |me (remo|te).X |
|00000d20| 66 69 6c 65 73 74 6f 72 | 65 2e 0a 58 0a 58 65 29 |filestor|e..X.Xe)|
|00000d30| 20 44 65 66 69 6e 65 20 | 77 68 6f 20 73 68 6f 75 | Define |who shou|
|00000d40| 6c 64 20 72 65 63 65 69 | 76 65 20 6d 61 69 6c 20 |ld recei|ve mail |
|00000d50| 61 62 6f 75 74 20 61 6e | 79 20 63 68 61 6e 67 65 |about an|y change|
|00000d60| 73 20 74 6f 20 74 68 65 | 20 66 69 6c 65 73 2e 0a |s to the| files..|
|00000d70| 58 20 20 20 45 64 69 74 | 20 27 63 68 65 63 6b 66 |X Edit| 'checkf|
|00000d80| 69 6c 65 73 27 20 61 6e | 64 20 63 68 61 6e 67 65 |iles' an|d change|
|00000d90| 20 4e 4f 54 49 46 59 20 | 74 6f 20 79 6f 75 72 20 | NOTIFY |to your |
|00000da0| 72 65 71 75 69 72 65 6d | 65 6e 74 2e 0a 58 0a 58 |requirem|ent..X.X|
|00000db0| 66 29 20 52 75 6e 20 61 | 20 27 72 65 73 65 74 66 |f) Run a| 'resetf|
|00000dc0| 69 6c 65 73 27 20 74 6f | 20 63 72 65 61 74 65 20 |iles' to| create |
|00000dd0| 79 6f 75 72 20 72 65 66 | 65 72 65 6e 63 65 20 63 |your ref|erence c|
|00000de0| 6f 70 79 20 6f 66 20 66 | 69 6c 65 28 73 29 20 66 |opy of f|ile(s) f|
|00000df0| 72 6f 6d 20 27 6c 69 73 | 74 27 2e 0a 58 20 20 20 |rom 'lis|t'..X |
|00000e00| 54 68 65 73 65 20 61 72 | 65 20 73 74 6f 72 65 64 |These ar|e stored|
|00000e10| 20 75 6e 64 65 72 20 24 | 42 41 53 45 2f 6f 72 69 | under $|BASE/ori|
|00000e20| 67 69 6e 61 6c 73 2e 0a | 58 0a 58 67 29 20 52 75 |ginals..|X.Xg) Ru|
|00000e30| 6e 20 61 20 27 63 68 65 | 63 6b 66 69 6c 65 73 27 |n a 'che|ckfiles'|
|00000e40| 2c 20 79 6f 75 20 73 68 | 6f 75 6c 64 20 67 65 74 |, you sh|ould get|
|00000e50| 3a 0a 58 0a 58 09 30 20 | 66 69 6c 65 73 20 63 68 |:.X.X.0 |files ch|
|00000e60| 61 6e 67 65 64 0a 58 0a | 58 68 29 20 53 65 74 20 |anged.X.|Xh) Set |
|00000e70| 75 70 20 61 20 63 72 6f | 6e 74 61 62 20 65 6e 74 |up a cro|ntab ent|
|00000e80| 72 79 20 74 6f 20 72 75 | 6e 20 63 68 65 63 6b 66 |ry to ru|n checkf|
|00000e90| 69 6c 65 73 20 61 73 20 | 6f 66 74 65 6e 20 61 73 |iles as |often as|
|00000ea0| 20 79 6f 75 20 77 69 73 | 68 2e 0a 58 20 20 20 48 | you wis|h..X H|
|00000eb0| 65 72 65 20 69 73 20 61 | 6e 20 65 78 61 6d 70 6c |ere is a|n exampl|
|00000ec0| 65 20 65 6e 74 72 79 20 | 66 6f 72 20 63 72 6f 6e |e entry |for cron|
|00000ed0| 74 61 62 20 74 6f 20 72 | 75 6e 20 65 61 63 68 20 |tab to r|un each |
|00000ee0| 68 6f 75 72 3a 0a 58 0a | 58 30 20 2a 20 2a 20 2a |hour:.X.|X0 * * *|
|00000ef0| 20 2a 20 2f 75 73 72 2f | 6c 6f 63 61 6c 2f 62 69 | * /usr/|local/bi|
|00000f00| 6e 2f 63 68 65 63 6b 66 | 69 6c 65 73 20 3e 3e 20 |n/checkf|iles >> |
|00000f10| 2f 75 73 72 2f 6c 69 62 | 2f 63 72 6f 6e 6c 6f 67 |/usr/lib|/cronlog|
|00000f20| 0a 58 0a 58 20 20 20 49 | 20 75 73 65 20 74 68 65 |.X.X I| use the|
|00000f30| 20 65 78 63 65 6c 6c 65 | 6e 74 20 27 77 61 74 63 | excelle|nt 'watc|
|00000f40| 68 65 72 27 20 70 72 6f | 67 72 61 6d 20 5b 31 5d |her' pro|gram [1]|
|00000f50| 20 74 68 61 74 20 77 61 | 73 20 64 69 73 74 72 69 | that wa|s distri|
|00000f60| 62 75 74 65 64 0a 58 20 | 20 20 6f 76 65 72 20 55 |buted.X | over U|
|00000f70| 53 45 4e 45 54 20 74 6f | 20 69 6e 76 6f 6b 65 20 |SENET to| invoke |
|00000f80| 27 63 68 65 63 6b 66 69 | 6c 65 73 27 2e 0a 58 0a |'checkfi|les'..X.|
|00000f90| 58 20 20 20 48 65 72 65 | 20 69 73 20 61 6e 20 65 |X Here| is an e|
|00000fa0| 78 61 6d 70 6c 65 20 65 | 6e 74 72 79 20 66 6f 72 |xample e|ntry for|
|00000fb0| 20 61 20 57 61 74 63 68 | 65 72 66 69 6c 65 3a 0a | a Watch|erfile:.|
|00000fc0| 58 0a 58 28 2f 75 73 72 | 2f 6c 6f 63 61 6c 2f 62 |X.X(/usr|/local/b|
|00000fd0| 69 6e 2f 63 68 65 63 6b | 66 69 6c 65 73 29 20 7b |in/check|files) {|
|00000fe0| 20 27 66 69 6c 65 20 63 | 68 61 6e 67 65 73 27 20 | 'file c|hanges' |
|00000ff0| 7d 0a 58 09 31 20 63 6f | 75 6e 74 25 64 20 32 20 |}.X.1 co|unt%d 2 |
|00001000| 66 69 6c 65 25 73 20 33 | 20 63 68 61 6e 67 65 64 |file%s 3| changed|
|00001010| 25 73 3a 0a 58 09 09 63 | 6f 75 6e 74 20 30 20 30 |%s:.X..c|ount 0 0|
|00001020| 2e 0a 58 0a 58 55 73 69 | 6e 67 20 63 68 65 63 6b |..X.XUsi|ng check|
|00001030| 66 69 6c 65 73 3a 0a 58 | 0a 58 57 68 65 6e 20 63 |files:.X|.XWhen c|
|00001040| 68 65 63 6b 66 69 6c 65 | 73 20 72 65 70 6f 72 74 |heckfile|s report|
|00001050| 73 20 73 6f 6d 65 20 63 | 68 61 6e 67 65 28 73 29 |s some c|hange(s)|
|00001060| 20 74 6f 20 61 20 66 69 | 6c 65 20 79 6f 75 20 68 | to a fi|le you h|
|00001070| 61 76 65 20 74 6f 20 64 | 65 63 69 64 65 0a 58 77 |ave to d|ecide.Xw|
|00001080| 68 65 74 68 65 72 20 74 | 68 65 20 63 68 61 6e 67 |hether t|he chang|
|00001090| 65 20 69 73 20 4f 4b 20 | 6f 72 20 6e 6f 74 2e 20 |e is OK |or not. |
|000010a0| 49 66 20 79 6f 75 20 61 | 72 65 20 68 61 70 70 79 |If you a|re happy|
|000010b0| 20 77 69 74 68 20 74 68 | 65 20 63 68 61 6e 67 65 | with th|e change|
|000010c0| 20 74 68 65 6e 0a 58 72 | 75 6e 20 61 20 27 72 65 | then.Xr|un a 're|
|000010d0| 73 65 74 66 69 6c 65 73 | 27 20 74 6f 20 75 70 64 |setfiles|' to upd|
|000010e0| 61 74 65 20 74 68 65 20 | 72 65 66 65 72 65 6e 63 |ate the |referenc|
|000010f0| 65 20 63 6f 70 79 20 6f | 74 68 65 72 77 69 73 65 |e copy o|therwise|
|00001100| 20 79 6f 75 20 77 69 6c | 6c 0a 58 63 6f 6e 74 69 | you wil|l.Xconti|
|00001110| 6e 75 65 20 74 6f 20 72 | 65 63 65 69 76 65 20 6e |nue to r|eceive n|
|00001120| 6f 74 69 66 69 63 61 74 | 69 6f 6e 20 61 62 6f 75 |otificat|ion abou|
|00001130| 74 20 74 68 65 20 63 68 | 61 6e 67 65 20 65 76 65 |t the ch|ange eve|
|00001140| 72 79 20 74 69 6d 65 20 | 79 6f 75 0a 58 72 75 6e |ry time |you.Xrun|
|00001150| 20 63 68 65 63 6b 66 69 | 6c 65 73 2e 0a 58 0a 58 | checkfi|les..X.X|
|00001160| 63 68 65 63 6b 66 69 6c | 65 73 20 72 65 70 6f 72 |checkfil|es repor|
|00001170| 74 73 20 6f 6e 20 63 68 | 61 6e 67 65 73 20 74 6f |ts on ch|anges to|
|00001180| 20 62 69 6e 61 72 79 20 | 66 69 6c 65 73 20 62 79 | binary |files by|
|00001190| 20 67 69 76 69 6e 67 20 | 63 68 65 63 6b 73 75 6d | giving |checksum|
|000011a0| 20 69 6e 66 6f 72 6d 61 | 74 69 6f 6e 0a 58 61 6e | informa|tion.Xan|
|000011b0| 64 20 63 68 61 6e 67 65 | 73 20 74 6f 20 6e 6f 6e |d change|s to non|
|000011c0| 2d 62 69 6e 61 72 79 20 | 66 69 6c 65 73 20 62 79 |-binary |files by|
|000011d0| 20 70 72 6f 76 69 64 69 | 6e 67 20 27 64 69 66 66 | providi|ng 'diff|
|000011e0| 27 20 6f 75 74 70 75 74 | 2e 0a 58 0a 58 44 6f 20 |' output|..X.XDo |
|000011f0| 62 65 20 63 61 72 65 66 | 75 6c 20 61 62 6f 75 74 |be caref|ul about|
|00001200| 20 74 68 65 20 6c 6f 63 | 61 74 69 6f 6e 20 61 6e | the loc|ation an|
|00001210| 64 20 61 63 63 65 73 73 | 20 72 69 67 68 74 73 20 |d access| rights |
|00001220| 74 6f 20 74 68 65 20 27 | 6f 72 69 67 69 6e 61 6c |to the '|original|
|00001230| 73 27 0a 58 64 69 72 65 | 63 74 6f 72 79 2e 20 49 |s'.Xdire|ctory. I|
|00001240| 66 20 61 6e 20 69 6e 74 | 72 75 64 65 72 20 66 6f |f an int|ruder fo|
|00001250| 75 6e 64 20 74 68 69 73 | 20 28 73 29 68 65 20 77 |und this| (s)he w|
|00001260| 6f 75 6c 64 20 6f 66 20 | 63 6f 75 72 73 65 20 63 |ould of |course c|
|00001270| 68 61 6e 67 65 0a 58 62 | 6f 74 68 20 74 68 65 20 |hange.Xb|oth the |
|00001280| 63 75 72 72 65 6e 74 20 | 66 69 6c 65 20 61 6e 64 |current |file and|
|00001290| 20 74 68 65 20 6f 6e 65 | 20 69 6e 20 27 6f 72 69 | the one| in 'ori|
|000012a0| 67 69 6e 61 6c 73 27 2e | 0a 58 0a 58 52 65 66 65 |ginals'.|.X.XRefe|
|000012b0| 72 65 6e 63 65 73 3a 0a | 58 0a 58 5b 31 5d 20 77 |rences:.|X.X[1] w|
|000012c0| 61 74 63 68 65 72 20 62 | 79 20 4b 65 6e 6e 65 74 |atcher b|y Kennet|
|000012d0| 68 20 49 6e 67 68 61 6d | 2c 0a 58 20 20 20 20 55 |h Ingham|,.X U|
|000012e0| 6e 69 76 65 72 73 69 74 | 79 20 6f 66 20 4e 65 77 |niversit|y of New|
|000012f0| 20 4d 65 78 69 63 6f 20 | 43 6f 6d 70 75 74 69 6e | Mexico |Computin|
|00001300| 67 20 43 65 6e 74 65 72 | 2c 0a 58 20 20 20 20 32 |g Center|,.X 2|
|00001310| 37 30 31 20 43 61 6d 70 | 75 73 20 4e 45 2c 0a 58 |701 Camp|us NE,.X|
|00001320| 20 20 20 20 41 6c 62 75 | 72 71 75 65 72 71 75 65 | Albu|rquerque|
|00001330| 2c 20 4e 4d 2c 20 38 37 | 31 33 31 0a 58 20 20 20 |, NM, 87|131.X |
|00001340| 20 69 6e 67 68 61 6d 40 | 63 68 61 72 6f 6e 2e 75 | ingham@|charon.u|
|00001350| 6e 6d 2e 65 64 75 20 6f | 72 20 75 63 62 76 61 78 |nm.edu o|r ucbvax|
|00001360| 21 75 6e 6d 76 61 78 21 | 63 68 61 72 6f 6e 21 69 |!unmvax!|charon!i|
|00001370| 6e 67 68 61 6d 0a 58 20 | 0a 58 43 61 76 65 61 74 |ngham.X |.XCaveat|
|00001380| 3a 20 6e 6f 74 20 67 75 | 61 72 61 6e 74 65 65 64 |: not gu|aranteed|
|00001390| 20 66 6f 72 20 61 6e 79 | 74 68 69 6e 67 20 62 75 | for any|thing bu|
|000013a0| 74 20 66 75 6e 20 74 6f | 20 72 75 6e 0a 58 0a 58 |t fun to| run.X.X|
|000013b0| 41 75 74 68 6f 72 3a 0a | 58 0a 58 50 61 75 6c 20 |Author:.|X.XPaul |
|000013c0| 42 6c 61 63 6b 62 75 72 | 6e 2c 20 20 20 20 20 20 |Blackbur|n, |
|000013d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000013e0| 20 20 20 20 20 20 20 20 | 20 20 20 22 6c 69 76 65 | | "live|
|000013f0| 20 66 72 65 65 20 6f 72 | 20 64 69 65 2e 2e 2e 22 | free or| die..."|
|00001400| 0a 58 4f 70 65 6e 20 53 | 6f 66 74 77 61 72 65 20 |.XOpen S|oftware |
|00001410| 46 6f 75 6e 64 61 74 69 | 6f 6e 2c 20 53 74 65 66 |Foundati|on, Stef|
|00001420| 61 6e 2d 47 65 6f 72 67 | 65 2d 52 69 6e 67 20 32 |an-Georg|e-Ring 2|
|00001430| 39 2c 20 44 2d 38 30 30 | 30 20 4d 75 6e 69 63 68 |9, D-800|0 Munich|
|00001440| 20 38 31 2c 20 57 20 47 | 65 72 6d 61 6e 79 0a 58 | 81, W G|ermany.X|
|00001450| 4d 61 69 6c 3a 20 6d 70 | 62 40 6f 73 66 2e 64 65 |Mail: mp|b@osf.de|
|00001460| 2c 20 6d 70 62 40 6d 6e | 2e 6f 73 66 2e 6f 72 67 |, mpb@mn|.osf.org|
|00001470| 2c 20 2e 2e 75 75 6e 65 | 74 21 6d 63 76 61 78 21 |, ..uune|t!mcvax!|
|00001480| 75 6e 69 64 6f 21 6f 73 | 66 6d 75 63 21 6d 70 62 |unido!os|fmuc!mpb|
|00001490| 0a 58 54 65 6c 3a 20 2b | 34 39 2d 38 39 2d 39 33 |.XTel: +|49-89-93|
|000014a0| 30 39 32 2d 31 32 33 20 | 46 61 78 3a 20 2b 34 39 |092-123 |Fax: +49|
|000014b0| 2d 38 39 2d 39 33 30 39 | 32 2d 31 30 34 0a 53 48 |-89-9309|2-104.SH|
|000014c0| 41 52 5f 45 4f 46 0a 66 | 69 20 23 20 65 6e 64 20 |AR_EOF.f|i # end |
|000014d0| 6f 66 20 6f 76 65 72 77 | 72 69 74 69 6e 67 20 63 |of overw|riting c|
|000014e0| 68 65 63 6b 0a 65 63 68 | 6f 20 73 68 61 72 3a 20 |heck.ech|o shar: |
|000014f0| 65 78 74 72 61 63 74 69 | 6e 67 20 22 27 63 68 65 |extracti|ng "'che|
|00001500| 63 6b 66 69 6c 65 73 27 | 22 20 27 28 31 39 36 34 |ckfiles'|" '(1964|
|00001510| 20 63 68 61 72 61 63 74 | 65 72 73 29 27 0a 69 66 | charact|ers)'.if|
|00001520| 20 74 65 73 74 20 2d 66 | 20 27 63 68 65 63 6b 66 | test -f| 'checkf|
|00001530| 69 6c 65 73 27 0a 74 68 | 65 6e 0a 09 65 63 68 6f |iles'.th|en..echo|
|00001540| 20 73 68 61 72 3a 20 77 | 69 6c 6c 20 6e 6f 74 20 | shar: w|ill not |
|00001550| 6f 76 65 72 2d 77 72 69 | 74 65 20 65 78 69 73 74 |over-wri|te exist|
|00001560| 69 6e 67 20 66 69 6c 65 | 20 22 27 63 68 65 63 6b |ing file| "'check|
|00001570| 66 69 6c 65 73 27 22 0a | 65 6c 73 65 0a 73 65 64 |files'".|else.sed|
|00001580| 20 27 73 2f 5e 58 2f 2f | 27 20 3c 3c 20 5c 53 48 | 's/^X//|' << \SH|
|00001590| 41 52 5f 45 4f 46 20 3e | 20 27 63 68 65 63 6b 66 |AR_EOF >| 'checkf|
|000015a0| 69 6c 65 73 27 0a 58 23 | 21 2f 62 69 6e 2f 73 68 |iles'.X#|!/bin/sh|
|000015b0| 35 0a 58 23 20 4e 41 4d | 45 09 09 63 68 65 63 6b |5.X# NAM|E..check|
|000015c0| 66 69 6c 65 73 0a 58 23 | 20 41 55 54 48 4f 52 09 |files.X#| AUTHOR.|
|000015d0| 50 61 75 6c 20 42 6c 61 | 63 6b 62 75 72 6e 2c 20 |Paul Bla|ckburn, |
|000015e0| 4f 53 46 2c 20 4d 75 6e | 69 63 68 0a 58 23 20 44 |OSF, Mun|ich.X# D|
|000015f0| 41 54 45 09 09 53 61 74 | 20 4f 63 74 20 32 31 20 |ATE..Sat| Oct 21 |
|00001600| 31 31 3a 35 32 3a 30 35 | 20 4d 45 54 20 31 39 38 |11:52:05| MET 198|
|00001610| 39 0a 58 23 20 50 55 52 | 50 4f 53 45 09 43 6f 6d |9.X# PUR|POSE.Com|
|00001620| 70 61 72 65 73 20 6f 72 | 69 67 69 6e 61 6c 73 20 |pares or|iginals |
|00001630| 77 69 74 68 20 63 75 72 | 72 65 6e 74 2c 20 72 65 |with cur|rent, re|
|00001640| 70 6f 72 74 73 20 64 69 | 66 66 73 0a 58 0a 58 50 |ports di|ffs.X.XP|
|00001650| 41 54 48 3d 2f 75 73 72 | 2f 75 63 62 3a 2f 62 69 |ATH=/usr|/ucb:/bi|
|00001660| 6e 3a 2f 75 73 72 2f 62 | 69 6e 0a 58 65 78 70 6f |n:/usr/b|in.Xexpo|
|00001670| 72 74 20 50 41 54 48 0a | 58 49 46 53 3d 22 20 09 |rt PATH.|XIFS=" .|
|00001680| 0a 58 22 0a 58 65 78 70 | 6f 72 74 20 49 46 53 0a |.X".Xexp|ort IFS.|
|00001690| 58 0a 58 42 41 53 45 3d | 2f 75 73 65 72 73 2f 6d |X.XBASE=|/users/m|
|000016a0| 70 62 2f 6d 61 73 74 65 | 72 73 0a 58 4e 4f 54 49 |pb/maste|rs.XNOTI|
|000016b0| 46 59 3d 6d 70 62 0a 58 | 4d 41 53 54 45 52 3d 6f |FY=mpb.X|MASTER=o|
|000016c0| 73 66 6d 75 63 0a 58 0a | 58 4c 49 53 54 3d 24 7b |sfmuc.X.|XLIST=${|
|000016d0| 42 41 53 45 7d 2f 6c 69 | 73 74 0a 58 4f 44 49 52 |BASE}/li|st.XODIR|
|000016e0| 3d 6f 72 69 67 69 6e 61 | 6c 73 0a 58 4f 52 49 47 |=origina|ls.XORIG|
|000016f0| 3d 24 7b 42 41 53 45 7d | 2f 24 7b 4f 44 49 52 7d |=${BASE}|/${ODIR}|
|00001700| 0a 58 4d 41 4b 45 3d 24 | 7b 42 41 53 45 7d 2f 4d |.XMAKE=$|{BASE}/M|
|00001710| 61 6b 65 66 69 6c 65 2e | 72 65 0a 58 54 4d 50 31 |akefile.|re.XTMP1|
|00001720| 3d 2f 75 73 72 2f 74 6d | 70 2f 63 68 65 63 6b 31 |=/usr/tm|p/check1|
|00001730| 2e 24 24 0a 58 54 4d 50 | 32 3d 2f 75 73 72 2f 74 |.$$.XTMP|2=/usr/t|
|00001740| 6d 70 2f 63 68 65 63 6b | 32 2e 24 24 0a 58 54 4d |mp/check|2.$$.XTM|
|00001750| 50 33 3d 2f 75 73 72 2f | 74 6d 70 2f 63 68 65 63 |P3=/usr/|tmp/chec|
|00001760| 6b 33 2e 24 24 0a 58 0a | 58 43 4d 44 3d 60 62 61 |k3.$$.X.|XCMD=`ba|
|00001770| 73 65 6e 61 6d 65 20 24 | 7b 30 7d 60 0a 58 0a 58 |sename $|{0}`.X.X|
|00001780| 69 66 20 5b 20 22 24 7b | 4d 41 53 54 45 52 7d 22 |if [ "${|MASTER}"|
|00001790| 20 21 3d 20 22 60 75 75 | 6e 61 6d 65 20 2d 6c 60 | != "`uu|name -l`|
|000017a0| 22 20 5d 0a 58 74 68 65 | 6e 0a 58 09 65 63 68 6f |" ].Xthe|n.X.echo|
|000017b0| 20 22 45 72 72 6f 72 3a | 20 24 7b 43 4d 44 7d 20 | "Error:| ${CMD} |
|000017c0| 73 68 6f 75 6c 64 20 62 | 65 20 65 78 65 63 75 74 |should b|e execut|
|000017d0| 65 64 20 6f 6e 20 24 7b | 4d 41 53 54 45 52 7d 22 |ed on ${|MASTER}"|
|000017e0| 20 3e 26 32 0a 58 09 65 | 78 69 74 20 31 0a 58 66 | >&2.X.e|xit 1.Xf|
|000017f0| 69 0a 58 0a 58 69 66 20 | 5b 20 2d 64 20 22 24 7b |i.X.Xif |[ -d "${|
|00001800| 42 41 53 45 7d 22 20 5d | 0a 58 74 68 65 6e 0a 58 |BASE}" ]|.Xthen.X|
|00001810| 09 63 64 20 24 42 41 53 | 45 0a 58 65 6c 73 65 0a |.cd $BAS|E.Xelse.|
|00001820| 58 09 65 63 68 6f 20 22 | 24 7b 43 4d 44 7d 3a 20 |X.echo "|${CMD}: |
|00001830| 75 6e 61 62 6c 65 20 74 | 6f 20 63 64 20 74 6f 20 |unable t|o cd to |
|00001840| 24 7b 42 41 53 45 7d 22 | 20 3e 26 32 0a 58 09 65 |${BASE}"| >&2.X.e|
|00001850| 78 69 74 20 31 0a 58 66 | 69 0a 58 0a 58 23 20 43 |xit 1.Xf|i.X.X# C|
|00001860| 72 65 61 74 65 20 61 20 | 4d 61 6b 65 66 69 6c 65 |reate a |Makefile|
|00001870| 20 66 72 6f 6d 20 4c 49 | 53 54 0a 58 0a 58 69 66 | from LI|ST.X.Xif|
|00001880| 20 5b 20 21 20 2d 7a 20 | 22 24 7b 44 45 42 55 47 | [ ! -z |"${DEBUG|
|00001890| 7d 22 20 5d 0a 58 74 68 | 65 6e 0a 58 09 65 63 68 |}" ].Xth|en.X.ech|
|000018a0| 6f 20 22 43 72 65 61 74 | 69 6e 67 20 6c 69 73 74 |o "Creat|ing list|
|000018b0| 20 6f 66 20 66 69 6c 65 | 73 22 0a 58 66 69 0a 58 | of file|s".Xfi.X|
|000018c0| 0a 58 67 72 65 70 20 2d | 76 20 22 5e 23 22 20 3c |.Xgrep -|v "^#" <|
|000018d0| 24 4c 49 53 54 20 5c 0a | 58 7c 20 73 65 64 20 2d |$LIST \.|X| sed -|
|000018e0| 65 20 22 2f 5e 24 2f 64 | 22 20 5c 0a 58 7c 20 63 |e "/^$/d|" \.X| c|
|000018f0| 75 74 20 2d 63 32 2d 20 | 3e 24 7b 54 4d 50 31 7d |ut -c2- |>${TMP1}|
|00001900| 0a 58 0a 58 69 66 20 5b | 20 21 20 2d 7a 20 22 24 |.X.Xif [| ! -z "$|
|00001910| 7b 44 45 42 55 47 7d 22 | 20 5d 0a 58 74 68 65 6e |{DEBUG}"| ].Xthen|
|00001920| 0a 58 09 65 63 68 6f 20 | 22 43 68 65 63 6b 69 6e |.X.echo |"Checkin|
|00001930| 67 20 63 75 72 72 65 6e | 74 20 76 65 72 73 75 73 |g curren|t versus|
|00001940| 20 6f 72 69 67 69 6e 61 | 6c 22 0a 58 66 69 0a 58 | origina|l".Xfi.X|
|00001950| 0a 58 77 68 69 6c 65 20 | 46 49 4c 45 3d 60 6c 69 |.Xwhile |FILE=`li|
|00001960| 6e 65 60 0a 58 64 6f 0a | 58 09 43 46 49 4c 45 3d |ne`.Xdo.|X.CFILE=|
|00001970| 2f 24 7b 46 49 4c 45 7d | 0a 58 09 4f 46 49 4c 45 |/${FILE}|.X.OFILE|
|00001980| 3d 24 7b 4f 52 49 47 7d | 2f 24 7b 46 49 4c 45 7d |=${ORIG}|/${FILE}|
|00001990| 0a 58 09 63 6d 70 20 24 | 7b 4f 46 49 4c 45 7d 20 |.X.cmp $|{OFILE} |
|000019a0| 24 7b 43 46 49 4c 45 7d | 20 32 3e 26 31 20 3e 2f |${CFILE}| 2>&1 >/|
|000019b0| 64 65 76 2f 6e 75 6c 6c | 0a 58 09 69 66 20 5b 20 |dev/null|.X.if [ |
|000019c0| 24 3f 20 3d 20 31 20 5d | 0a 58 09 74 68 65 6e 0a |$? = 1 ]|.X.then.|
|000019d0| 58 09 09 69 66 20 5b 20 | 21 20 2d 7a 20 22 24 7b |X..if [ |! -z "${|
|000019e0| 44 45 42 55 47 7d 22 20 | 5d 0a 58 09 09 74 68 65 |DEBUG}" |].X..the|
|000019f0| 6e 0a 58 09 09 09 65 63 | 68 6f 20 22 2f 24 7b 46 |n.X...ec|ho "/${F|
|00001a00| 49 4c 45 7d 20 63 68 61 | 6e 67 65 64 22 0a 58 09 |ILE} cha|nged".X.|
|00001a10| 09 66 69 0a 58 0a 58 09 | 09 65 63 68 6f 20 24 7b |.fi.X.X.|.echo ${|
|00001a20| 46 49 4c 45 7d 20 3e 3e | 24 7b 54 4d 50 33 7d 0a |FILE} >>|${TMP3}.|
|00001a30| 58 09 66 69 0a 58 64 6f | 6e 65 20 3c 24 7b 54 4d |X.fi.Xdo|ne <${TM|
|00001a40| 50 31 7d 0a 58 0a 58 69 | 66 20 5b 20 2d 73 20 24 |P1}.X.Xi|f [ -s $|
|00001a50| 7b 54 4d 50 33 7d 20 5d | 0a 58 74 68 65 6e 0a 58 |{TMP3} ]|.Xthen.X|
|00001a60| 09 66 6f 72 20 46 49 4c | 45 20 69 6e 20 60 63 61 |.for FIL|E in `ca|
|00001a70| 74 20 24 7b 54 4d 50 33 | 7d 60 0a 58 09 64 6f 0a |t ${TMP3|}`.X.do.|
|00001a80| 58 09 09 6c 73 20 2d 6c | 64 67 20 24 7b 4f 44 49 |X..ls -l|dg ${ODI|
|00001a90| 52 7d 2f 24 7b 46 49 4c | 45 7d 20 3e 24 7b 54 4d |R}/${FIL|E} >${TM|
|00001aa0| 50 32 7d 0a 58 09 09 6c | 73 20 2d 6c 64 67 20 2f |P2}.X..l|s -ldg /|
|00001ab0| 24 7b 46 49 4c 45 7d 20 | 3e 3e 24 7b 54 4d 50 32 |${FILE} |>>${TMP2|
|00001ac0| 7d 0a 58 09 09 58 3d 60 | 24 7b 42 41 53 45 7d 2f |}.X..X=`|${BASE}/|
|00001ad0| 66 74 79 70 65 20 24 7b | 4f 52 49 47 7d 2f 24 7b |ftype ${|ORIG}/${|
|00001ae0| 46 49 4c 45 7d 60 0a 58 | 09 09 69 66 20 5b 20 2d |FILE}`.X|..if [ -|
|00001af0| 7a 20 22 24 7b 58 7d 22 | 20 5d 0a 58 09 09 74 68 |z "${X}"| ].X..th|
|00001b00| 65 6e 0a 58 09 09 09 65 | 63 68 6f 20 22 5c 6e 3c |en.X...e|cho "\n<|
|00001b10| 6f 72 69 67 69 6e 61 6c | 5c 6e 3e 63 75 72 72 65 |original|\n>curre|
|00001b20| 6e 74 22 20 3e 3e 24 7b | 54 4d 50 32 7d 0a 58 09 |nt" >>${|TMP2}.X.|
|00001b30| 09 09 64 69 66 66 20 24 | 7b 4f 52 49 47 7d 2f 24 |..diff $|{ORIG}/$|
|00001b40| 7b 46 49 4c 45 7d 20 2f | 24 7b 46 49 4c 45 7d 20 |{FILE} /|${FILE} |
|00001b50| 20 3e 3e 24 7b 54 4d 50 | 32 7d 0a 58 09 09 65 6c | >>${TMP|2}.X..el|
|00001b60| 73 65 0a 58 09 09 09 65 | 63 68 6f 20 22 5c 6e 43 |se.X...e|cho "\nC|
|00001b70| 68 65 63 6b 73 75 6d 73 | 3a 22 20 3e 3e 24 7b 54 |hecksums|:" >>${T|
|00001b80| 4d 50 32 7d 0a 58 09 09 | 09 73 75 6d 20 24 7b 4f |MP2}.X..|.sum ${O|
|00001b90| 44 49 52 7d 2f 24 7b 46 | 49 4c 45 7d 20 2f 24 7b |DIR}/${F|ILE} /${|
|00001ba0| 46 49 4c 45 7d 20 3e 3e | 24 7b 54 4d 50 32 7d 0a |FILE} >>|${TMP2}.|
|00001bb0| 58 09 09 66 69 0a 58 09 | 09 65 63 68 6f 20 22 5c |X..fi.X.|.echo "\|
|00001bc0| 6e 6c 6f 67 69 6e 73 20 | 77 68 65 6e 20 63 68 61 |nlogins |when cha|
|00001bd0| 6e 67 65 20 77 61 73 20 | 6e 6f 74 69 63 65 64 20 |nge was |noticed |
|00001be0| 22 20 3e 3e 24 7b 54 4d | 50 32 7d 0a 58 09 09 77 |" >>${TM|P2}.X..w|
|00001bf0| 68 6f 20 3e 3e 24 7b 54 | 4d 50 32 7d 0a 58 09 09 |ho >>${T|MP2}.X..|
|00001c00| 6d 61 69 6c 20 2d 73 20 | 22 2f 24 7b 46 49 4c 45 |mail -s |"/${FILE|
|00001c10| 7d 20 63 68 61 6e 67 65 | 64 22 20 24 7b 4e 4f 54 |} change|d" ${NOT|
|00001c20| 49 46 59 7d 20 3c 24 7b | 54 4d 50 32 7d 0a 58 09 |IFY} <${|TMP2}.X.|
|00001c30| 64 6f 6e 65 0a 58 09 43 | 4f 55 4e 54 3d 60 77 63 |done.X.C|OUNT=`wc|
|00001c40| 20 2d 6c 20 24 7b 54 4d | 50 33 7d 20 7c 20 63 75 | -l ${TM|P3} | cu|
|00001c50| 74 20 2d 63 31 2d 38 60 | 0a 58 09 43 4f 55 4e 54 |t -c1-8`|.X.COUNT|
|00001c60| 3d 60 65 63 68 6f 20 24 | 7b 43 4f 55 4e 54 7d 60 |=`echo $|{COUNT}`|
|00001c70| 0a 58 65 6c 73 65 0a 58 | 09 43 4f 55 4e 54 3d 30 |.Xelse.X|.COUNT=0|
|00001c80| 0a 58 66 69 0a 58 0a 58 | 72 6d 20 2d 66 20 24 7b |.Xfi.X.X|rm -f ${|
|00001c90| 54 4d 50 31 7d 20 24 7b | 54 4d 50 32 7d 20 24 7b |TMP1} ${|TMP2} ${|
|00001ca0| 54 4d 50 33 7d 0a 58 0a | 58 23 0a 58 23 20 54 68 |TMP3}.X.|X#.X# Th|
|00001cb0| 69 73 20 6c 61 73 74 20 | 62 69 74 20 69 73 20 66 |is last |bit is f|
|00001cc0| 6f 72 20 75 73 65 20 77 | 69 74 68 20 61 20 73 79 |or use w|ith a sy|
|00001cd0| 73 74 65 6d 20 6d 6f 6e | 69 74 6f 72 20 70 72 6f |stem mon|itor pro|
|00001ce0| 67 72 61 6d 0a 58 23 20 | 49 74 20 72 65 70 6f 72 |gram.X# |It repor|
|00001cf0| 74 73 20 74 68 65 20 73 | 74 61 74 75 73 20 74 6f |ts the s|tatus to|
|00001d00| 20 74 68 65 20 70 61 72 | 65 6e 74 0a 58 23 20 0a | the par|ent.X# .|
|00001d10| 58 0a 58 65 63 68 6f 20 | 22 24 7b 43 4f 55 4e 54 |X.Xecho |"${COUNT|
|00001d20| 7d 20 66 69 6c 65 5c 63 | 22 0a 58 69 66 20 5b 20 |} file\c|".Xif [ |
|00001d30| 24 7b 43 4f 55 4e 54 7d | 20 21 3d 20 31 20 5d 0a |${COUNT}| != 1 ].|
|00001d40| 58 74 68 65 6e 0a 58 09 | 65 63 68 6f 20 22 73 5c |Xthen.X.|echo "s\|
|00001d50| 63 22 0a 58 66 69 0a 58 | 65 63 68 6f 20 22 20 63 |c".Xfi.X|echo " c|
|00001d60| 68 61 6e 67 65 64 5c 63 | 22 0a 58 0a 58 69 66 20 |hanged\c|".X.Xif |
|00001d70| 5b 20 24 7b 43 4f 55 4e | 54 7d 20 2d 67 74 20 30 |[ ${COUN|T} -gt 0|
|00001d80| 20 5d 0a 58 74 68 65 6e | 0a 58 09 65 63 68 6f 20 | ].Xthen|.X.echo |
|00001d90| 22 20 28 64 65 74 61 69 | 6c 73 20 6d 61 69 6c 65 |" (detai|ls maile|
|00001da0| 64 20 74 6f 20 24 7b 4e | 4f 54 49 46 59 7d 29 22 |d to ${N|OTIFY})"|
|00001db0| 0a 58 65 6c 73 65 0a 58 | 09 65 63 68 6f 0a 58 66 |.Xelse.X|.echo.Xf|
|00001dc0| 69 0a 58 65 78 69 74 0a | 53 48 41 52 5f 45 4f 46 |i.Xexit.|SHAR_EOF|
|00001dd0| 0a 63 68 6d 6f 64 20 2b | 78 20 27 63 68 65 63 6b |.chmod +|x 'check|
|00001de0| 66 69 6c 65 73 27 0a 66 | 69 20 23 20 65 6e 64 20 |files'.f|i # end |
|00001df0| 6f 66 20 6f 76 65 72 77 | 72 69 74 69 6e 67 20 63 |of overw|riting c|
|00001e00| 68 65 63 6b 0a 65 63 68 | 6f 20 73 68 61 72 3a 20 |heck.ech|o shar: |
|00001e10| 65 78 74 72 61 63 74 69 | 6e 67 20 22 27 66 74 79 |extracti|ng "'fty|
|00001e20| 70 65 2e 63 27 22 20 27 | 28 32 31 37 32 20 63 68 |pe.c'" '|(2172 ch|
|00001e30| 61 72 61 63 74 65 72 73 | 29 27 0a 69 66 20 74 65 |aracters|)'.if te|
|00001e40| 73 74 20 2d 66 20 27 66 | 74 79 70 65 2e 63 27 0a |st -f 'f|type.c'.|
|00001e50| 74 68 65 6e 0a 09 65 63 | 68 6f 20 73 68 61 72 3a |then..ec|ho shar:|
|00001e60| 20 77 69 6c 6c 20 6e 6f | 74 20 6f 76 65 72 2d 77 | will no|t over-w|
|00001e70| 72 69 74 65 20 65 78 69 | 73 74 69 6e 67 20 66 69 |rite exi|sting fi|
|00001e80| 6c 65 20 22 27 66 74 79 | 70 65 2e 63 27 22 0a 65 |le "'fty|pe.c'".e|
|00001e90| 6c 73 65 0a 73 65 64 20 | 27 73 2f 5e 58 2f 2f 27 |lse.sed |'s/^X//'|
|00001ea0| 20 3c 3c 20 5c 53 48 41 | 52 5f 45 4f 46 20 3e 20 | << \SHA|R_EOF > |
|00001eb0| 27 66 74 79 70 65 2e 63 | 27 0a 58 23 69 6e 63 6c |'ftype.c|'.X#incl|
|00001ec0| 75 64 65 20 3c 73 74 64 | 69 6f 2e 68 3e 0a 58 0a |ude <std|io.h>.X.|
|00001ed0| 58 2f 2a 09 41 74 79 70 | 65 2e 63 20 20 66 69 6e |X/*.Atyp|e.c fin|
|00001ee0| 64 20 6e 75 6d 62 65 72 | 73 20 6f 66 20 64 69 66 |d number|s of dif|
|00001ef0| 66 65 72 65 6e 74 20 74 | 79 70 65 73 20 6f 66 20 |ferent t|ypes of |
|00001f00| 63 68 61 72 61 63 74 65 | 72 73 20 69 6e 0a 58 2a |characte|rs in.X*|
|00001f10| 09 61 20 66 69 6c 65 2e | 2e 2e 52 69 63 68 20 4b |.a file.|..Rich K|
|00001f20| 75 6c 61 77 69 65 63 2c | 20 38 2f 32 2f 38 32 20 |ulawiec,| 8/2/82 |
|00001f30| 20 72 65 76 69 73 65 64 | 20 31 30 2f 38 36 0a 58 | revised| 10/86.X|
|00001f40| 2a 09 4e 6f 74 65 20 74 | 68 61 74 20 63 68 61 72 |*.Note t|hat char|
|00001f50| 61 63 74 65 72 73 20 32 | 30 30 2d 33 37 37 20 6f |acters 2|00-377 o|
|00001f60| 63 74 61 6c 20 61 72 65 | 20 6d 61 70 70 65 64 20 |ctal are| mapped |
|00001f70| 64 6f 77 6e 2e 0a 58 2a | 0a 58 2a 09 4d 6f 64 69 |down..X*|.X*.Modi|
|00001f80| 66 69 65 64 20 62 79 20 | 50 61 75 6c 20 42 6c 61 |fied by |Paul Bla|
|00001f90| 63 6b 62 75 72 6e 20 28 | 6d 70 62 40 6d 6e 2e 6f |ckburn (|mpb@mn.o|
|00001fa0| 73 66 2e 6f 72 67 29 20 | 74 6f 20 64 65 74 65 72 |sf.org) |to deter|
|00001fb0| 6d 69 6e 65 0a 58 2a 09 | 69 66 20 66 69 6c 65 20 |mine.X*.|if file |
|00001fc0| 69 73 20 27 62 69 6e 61 | 72 79 27 20 28 69 2e 65 |is 'bina|ry' (i.e|
|00001fd0| 2e 20 65 78 65 63 75 74 | 61 62 6c 65 2c 20 64 69 |. execut|able, di|
|00001fe0| 72 65 63 74 6f 72 79 29 | 20 73 6f 20 74 68 61 74 |rectory)| so that|
|00001ff0| 0a 58 2a 09 64 69 66 66 | 20 63 6f 75 6c 64 20 6e |.X*.diff| could n|
|00002000| 6f 74 20 62 65 20 75 73 | 65 64 20 6f 6e 20 69 74 |ot be us|ed on it|
|00002010| 2e 0a 58 2a 2f 0a 58 0a | 58 63 68 61 72 20 20 20 |..X*/.X.|Xchar |
|00002020| 20 2a 6d 61 70 74 61 62 | 6c 65 5b 31 36 5d 5b 38 | *maptab|le[16][8|
|00002030| 5d 20 3d 20 7b 20 0a 58 | 09 22 6e 75 6c 22 2c 20 |] = { .X|."nul", |
|00002040| 22 73 6f 68 22 2c 20 22 | 73 74 78 22 2c 20 22 65 |"soh", "|stx", "e|
|00002050| 74 78 22 2c 20 22 65 6f | 74 22 2c 20 22 65 6e 71 |tx", "eo|t", "enq|
|00002060| 22 2c 20 22 61 63 6b 22 | 2c 20 22 62 65 6c 22 2c |", "ack"|, "bel",|
|00002070| 0a 58 09 22 62 73 20 22 | 2c 20 22 68 74 20 22 2c |.X."bs "|, "ht ",|
|00002080| 20 22 6e 6c 20 22 2c 20 | 22 76 74 20 22 2c 20 22 | "nl ", |"vt ", "|
|00002090| 6e 70 20 22 2c 20 22 63 | 72 20 22 2c 20 22 73 6f |np ", "c|r ", "so|
|000020a0| 20 22 2c 20 22 73 69 20 | 22 2c 0a 58 09 22 64 6c | ", "si |",.X."dl|
|000020b0| 65 22 2c 20 22 64 63 31 | 22 2c 20 22 64 63 32 22 |e", "dc1|", "dc2"|
|000020c0| 2c 20 22 64 63 33 22 2c | 20 22 64 63 34 22 2c 20 |, "dc3",| "dc4", |
|000020d0| 22 6e 61 6b 22 2c 20 22 | 73 79 6e 22 2c 20 22 65 |"nak", "|syn", "e|
|000020e0| 74 62 22 2c 0a 58 09 22 | 63 61 6e 22 2c 20 22 65 |tb",.X."|can", "e|
|000020f0| 6d 20 22 2c 20 22 73 75 | 62 22 2c 20 22 65 73 63 |m ", "su|b", "esc|
|00002100| 22 2c 20 22 66 73 20 22 | 2c 20 22 67 73 20 22 2c |", "fs "|, "gs ",|
|00002110| 20 22 72 73 20 22 2c 20 | 22 75 73 20 22 2c 0a 58 | "rs ", |"us ",.X|
|00002120| 09 22 73 70 20 22 2c 20 | 22 20 21 20 22 2c 20 22 |."sp ", |" ! ", "|
|00002130| 20 5c 22 20 22 2c 22 20 | 23 20 22 2c 20 22 20 24 | \" "," |# ", " $|
|00002140| 20 22 2c 20 22 20 25 20 | 22 2c 20 22 20 26 20 22 | ", " % |", " & "|
|00002150| 2c 20 22 20 27 20 22 2c | 0a 58 09 22 20 28 20 22 |, " ' ",|.X." ( "|
|00002160| 2c 20 22 20 29 20 22 2c | 20 22 20 2a 20 22 2c 20 |, " ) ",| " * ", |
|00002170| 22 20 2b 20 22 2c 20 22 | 20 2c 20 22 2c 20 22 20 |" + ", "| , ", " |
|00002180| 2d 20 22 2c 20 22 20 2e | 20 22 2c 20 22 20 2f 20 |- ", " .| ", " / |
|00002190| 22 2c 20 0a 58 09 22 20 | 30 20 22 2c 20 22 20 31 |", .X." |0 ", " 1|
|000021a0| 20 22 2c 20 22 20 32 20 | 22 2c 20 22 20 33 20 22 | ", " 2 |", " 3 "|
|000021b0| 2c 20 22 20 34 20 22 2c | 20 22 20 35 20 22 2c 20 |, " 4 ",| " 5 ", |
|000021c0| 22 20 36 20 22 2c 20 22 | 20 37 20 22 2c 20 0a 58 |" 6 ", "| 7 ", .X|
|000021d0| 09 22 20 38 20 22 2c 20 | 22 20 39 20 22 2c 20 22 |." 8 ", |" 9 ", "|
|000021e0| 20 3a 20 22 2c 20 22 20 | 3b 20 22 2c 20 22 20 3c | : ", " |; ", " <|
|000021f0| 20 22 2c 20 22 20 3d 20 | 22 2c 20 22 20 3e 20 22 | ", " = |", " > "|
|00002200| 2c 20 22 20 3f 20 22 2c | 20 0a 58 09 22 20 40 20 |, " ? ",| .X." @ |
|00002210| 22 2c 20 22 20 41 20 22 | 2c 20 22 20 42 20 22 2c |", " A "|, " B ",|
|00002220| 20 22 20 43 20 22 2c 20 | 22 20 44 20 22 2c 20 22 | " C ", |" D ", "|
|00002230| 20 45 20 22 2c 20 22 20 | 46 20 22 2c 20 22 20 47 | E ", " |F ", " G|
|00002240| 20 22 2c 20 0a 58 09 22 | 20 48 20 22 2c 20 22 20 | ", .X."| H ", " |
|00002250| 49 20 22 2c 20 22 20 4a | 20 22 2c 20 22 20 4b 20 |I ", " J| ", " K |
|00002260| 22 2c 20 22 20 4c 20 22 | 2c 20 22 20 4d 20 22 2c |", " L "|, " M ",|
|00002270| 20 22 20 4e 20 22 2c 20 | 22 20 4f 20 22 2c 20 0a | " N ", |" O ", .|
|00002280| 58 09 22 20 50 20 22 2c | 20 22 20 51 20 22 2c 20 |X." P ",| " Q ", |
|00002290| 22 20 52 20 22 2c 20 22 | 20 53 20 22 2c 20 22 20 |" R ", "| S ", " |
|000022a0| 54 20 22 2c 20 22 20 55 | 20 22 2c 20 22 20 56 20 |T ", " U| ", " V |
|000022b0| 22 2c 20 22 20 57 20 22 | 2c 20 0a 58 09 22 20 58 |", " W "|, .X." X|
|000022c0| 20 22 2c 20 22 20 59 20 | 22 2c 20 22 20 5a 20 22 | ", " Y |", " Z "|
|000022d0| 2c 20 22 20 5b 20 22 2c | 20 22 20 5c 5c 20 22 2c |, " [ ",| " \\ ",|
|000022e0| 20 22 20 5d 20 22 2c 20 | 22 20 5e 20 22 2c 20 22 | " ] ", |" ^ ", "|
|000022f0| 20 5f 20 22 2c 20 0a 58 | 09 22 20 60 20 22 2c 20 | _ ", .X|." ` ", |
|00002300| 22 20 61 20 22 2c 20 22 | 20 62 20 22 2c 20 22 20 |" a ", "| b ", " |
|00002310| 63 20 22 2c 20 22 20 64 | 20 22 2c 20 22 20 65 20 |c ", " d| ", " e |
|00002320| 22 2c 20 22 20 66 20 22 | 2c 20 22 20 67 20 22 2c |", " f "|, " g ",|
|00002330| 20 0a 58 09 22 20 68 20 | 22 2c 20 22 20 69 20 22 | .X." h |", " i "|
|00002340| 2c 20 22 20 6a 20 22 2c | 20 22 20 6b 20 22 2c 20 |, " j ",| " k ", |
|00002350| 22 20 6c 20 22 2c 20 22 | 20 6d 20 22 2c 20 22 20 |" l ", "| m ", " |
|00002360| 6e 20 22 2c 20 22 20 6f | 20 22 2c 20 0a 58 09 22 |n ", " o| ", .X."|
|00002370| 20 70 20 22 2c 20 22 20 | 71 20 22 2c 20 22 20 72 | p ", " |q ", " r|
|00002380| 20 22 2c 20 22 20 73 20 | 22 2c 20 22 20 74 20 22 | ", " s |", " t "|
|00002390| 2c 20 22 20 75 20 22 2c | 20 22 20 76 20 22 2c 20 |, " u ",| " v ", |
|000023a0| 22 20 77 20 22 2c 0a 58 | 09 22 20 78 20 22 2c 20 |" w ",.X|." x ", |
|000023b0| 22 20 79 20 22 2c 20 22 | 20 7a 20 22 2c 20 22 20 |" y ", "| z ", " |
|000023c0| 7b 20 22 2c 20 22 20 7c | 20 22 2c 20 22 20 7d 20 |{ ", " || ", " } |
|000023d0| 22 2c 20 22 20 7e 20 22 | 2c 20 22 64 65 6c 22 20 |", " ~ "|, "del" |
|000023e0| 0a 58 09 7d 20 3b 0a 58 | 0a 58 69 6e 74 20 20 20 |.X.} ;.X|.Xint |
|000023f0| 20 20 63 6f 75 6e 74 5b | 38 5d 5b 31 36 5d 3b 0a | count[|8][16];.|
|00002400| 58 0a 58 46 49 4c 45 09 | 2a 66 70 3b 0a 58 46 49 |X.XFILE.|*fp;.XFI|
|00002410| 4c 45 09 2a 66 6f 70 65 | 6e 28 29 3b 0a 58 0a 58 |LE.*fope|n();.X.X|
|00002420| 6d 61 69 6e 28 61 72 67 | 63 2c 20 61 72 67 76 29 |main(arg|c, argv)|
|00002430| 0a 58 69 6e 74 20 61 72 | 67 63 3b 0a 58 63 68 61 |.Xint ar|gc;.Xcha|
|00002440| 72 20 2a 61 72 67 76 5b | 5d 3b 0a 58 7b 0a 58 09 |r *argv[|];.X{.X.|
|00002450| 69 6e 74 20 63 2c 69 2c | 6a 2c 6b 2c 6e 70 72 69 |int c,i,|j,k,npri|
|00002460| 6e 74 2c 6e 72 65 61 64 | 3b 0a 58 0a 58 2f 2a 20 |nt,nread|;.X.X/* |
|00002470| 6f 6e 6c 79 20 6e 65 65 | 64 20 74 6f 20 72 65 61 |only nee|d to rea|
|00002480| 64 20 74 68 65 20 66 69 | 72 73 74 20 31 32 38 20 |d the fi|rst 128 |
|00002490| 62 79 74 65 73 20 2a 2f | 0a 58 0a 58 09 6e 72 65 |bytes */|.X.X.nre|
|000024a0| 61 64 3d 30 3b 0a 58 09 | 69 66 28 61 72 67 63 20 |ad=0;.X.|if(argc |
|000024b0| 3d 3d 20 31 29 0a 58 09 | 7b 0a 58 09 09 66 70 20 |== 1).X.|{.X..fp |
|000024c0| 3d 20 73 74 64 69 6e 3b | 0a 58 09 09 77 68 69 6c |= stdin;|.X..whil|
|000024d0| 65 28 28 28 63 20 3d 20 | 67 65 74 63 28 66 70 29 |e(((c = |getc(fp)|
|000024e0| 29 20 21 3d 20 45 4f 46 | 29 20 26 26 20 28 6e 72 |) != EOF|) && (nr|
|000024f0| 65 61 64 20 3c 20 31 32 | 38 29 29 0a 58 09 09 7b |ead < 12|8)).X..{|
|00002500| 0a 58 09 09 09 63 6f 75 | 6e 74 5b 20 28 28 63 26 |.X...cou|nt[ ((c&|
|00002510| 30 31 37 37 29 20 25 20 | 38 29 20 5d 5b 20 28 28 |0177) % |8) ][ ((|
|00002520| 63 26 30 31 37 37 29 20 | 2f 20 38 29 20 5d 2b 2b |c&0177) |/ 8) ]++|
|00002530| 3b 0a 58 09 09 09 6e 72 | 65 61 64 2b 2b 3b 0a 58 |;.X...nr|ead++;.X|
|00002540| 09 09 7d 0a 58 09 7d 0a | 58 09 65 6c 73 65 0a 58 |..}.X.}.|X.else.X|
|00002550| 09 7b 0a 58 09 09 66 6f | 72 20 28 20 69 20 3d 20 |.{.X..fo|r ( i = |
|00002560| 31 3b 20 69 20 3c 20 61 | 72 67 63 3b 20 20 69 2b |1; i < a|rgc; i+|
|00002570| 2b 29 0a 58 09 09 7b 0a | 58 09 09 09 69 66 28 20 |+).X..{.|X...if( |
|00002580| 28 66 70 3d 66 6f 70 65 | 6e 28 61 72 67 76 5b 69 |(fp=fope|n(argv[i|
|00002590| 5d 2c 22 72 22 29 29 20 | 3d 3d 20 4e 55 4c 4c 29 |],"r")) |== NULL)|
|000025a0| 0a 58 09 09 09 7b 0a 58 | 09 09 09 09 28 76 6f 69 |.X...{.X|....(voi|
|000025b0| 64 29 20 66 70 72 69 6e | 74 66 28 73 74 64 65 72 |d) fprin|tf(stder|
|000025c0| 72 2c 22 61 74 79 70 65 | 3a 20 63 61 6e 27 74 20 |r,"atype|: can't |
|000025d0| 6f 70 65 6e 20 25 73 5c | 6e 22 2c 61 72 67 76 5b |open %s\|n",argv[|
|000025e0| 69 5d 29 3b 0a 58 09 09 | 09 09 63 6f 6e 74 69 6e |i]);.X..|..contin|
|000025f0| 75 65 3b 0a 58 09 09 09 | 7d 0a 58 09 09 09 77 68 |ue;.X...|}.X...wh|
|00002600| 69 6c 65 28 28 28 63 20 | 3d 20 67 65 74 63 28 66 |ile(((c |= getc(f|
|00002610| 70 29 29 20 21 3d 20 45 | 4f 46 29 20 26 26 20 28 |p)) != E|OF) && (|
|00002620| 6e 72 65 61 64 20 3c 20 | 31 32 38 29 29 0a 58 09 |nread < |128)).X.|
|00002630| 09 09 7b 0a 58 09 09 09 | 09 63 6f 75 6e 74 5b 20 |..{.X...|.count[ |
|00002640| 28 28 63 26 30 31 37 37 | 29 20 25 20 38 29 20 5d |((c&0177|) % 8) ]|
|00002650| 5b 20 28 28 63 26 30 31 | 37 37 29 20 2f 20 38 29 |[ ((c&01|77) / 8)|
|00002660| 20 5d 2b 2b 3b 0a 58 09 | 09 09 09 6e 72 65 61 64 | ]++;.X.|...nread|
|00002670| 2b 2b 3b 0a 58 09 09 09 | 7d 0a 58 09 09 09 28 76 |++;.X...|}.X...(v|
|00002680| 6f 69 64 29 20 66 63 6c | 6f 73 65 28 66 70 29 3b |oid) fcl|ose(fp);|
|00002690| 0a 58 09 09 7d 0a 58 09 | 7d 0a 58 0a 58 09 6e 70 |.X..}.X.|}.X.X.np|
|000026a0| 72 69 6e 74 3d 30 3b 0a | 58 09 66 6f 72 28 6b 3d |rint=0;.|X.for(k=|
|000026b0| 30 3b 20 6b 3c 34 3b 20 | 6b 2b 2b 29 0a 58 09 7b |0; k<4; |k++).X.{|
|000026c0| 0a 58 09 09 66 6f 72 28 | 6a 3d 30 3b 20 6a 3c 38 |.X..for(|j=0; j<8|
|000026d0| 3b 20 6a 2b 2b 29 20 0a | 58 09 09 09 6e 70 72 69 |; j++) .|X...npri|
|000026e0| 6e 74 2b 3d 63 6f 75 6e | 74 5b 6a 5d 5b 6b 5d 3b |nt+=coun|t[j][k];|
|000026f0| 0a 58 09 7d 0a 58 09 6e | 70 72 69 6e 74 2d 3d 63 |.X.}.X.n|print-=c|
|00002700| 6f 75 6e 74 5b 31 5d 5b | 31 5d 3b 20 2f 2a 20 64 |ount[1][|1]; /* d|
|00002710| 69 73 63 6f 75 6e 74 20 | 74 61 62 73 20 2a 2f 0a |iscount |tabs */.|
|00002720| 58 09 6e 70 72 69 6e 74 | 2d 3d 63 6f 75 6e 74 5b |X.nprint|-=count[|
|00002730| 32 5d 5b 31 5d 3b 20 2f | 2a 20 64 69 73 63 6f 75 |2][1]; /|* discou|
|00002740| 6e 74 20 6e 65 77 6c 69 | 6e 65 73 20 2a 2f 0a 58 |nt newli|nes */.X|
|00002750| 09 69 66 20 28 6e 70 72 | 69 6e 74 20 3e 20 30 29 |.if (npr|int > 0)|
|00002760| 0a 58 09 7b 0a 58 09 09 | 28 76 6f 69 64 29 20 70 |.X.{.X..|(void) p|
|00002770| 72 69 6e 74 66 28 22 62 | 69 6e 61 72 79 5c 6e 22 |rintf("b|inary\n"|
|00002780| 29 3b 0a 58 09 7d 0a 58 | 7d 0a 53 48 41 52 5f 45 |);.X.}.X|}.SHAR_E|
|00002790| 4f 46 0a 66 69 20 23 20 | 65 6e 64 20 6f 66 20 6f |OF.fi # |end of o|
|000027a0| 76 65 72 77 72 69 74 69 | 6e 67 20 63 68 65 63 6b |verwriti|ng check|
|000027b0| 0a 65 63 68 6f 20 73 68 | 61 72 3a 20 65 78 74 72 |.echo sh|ar: extr|
|000027c0| 61 63 74 69 6e 67 20 22 | 27 6c 69 73 74 27 22 20 |acting "|'list'" |
|000027d0| 27 28 37 30 30 20 63 68 | 61 72 61 63 74 65 72 73 |'(700 ch|aracters|
|000027e0| 29 27 0a 69 66 20 74 65 | 73 74 20 2d 66 20 27 6c |)'.if te|st -f 'l|
|000027f0| 69 73 74 27 0a 74 68 65 | 6e 0a 09 65 63 68 6f 20 |ist'.the|n..echo |
|00002800| 73 68 61 72 3a 20 77 69 | 6c 6c 20 6e 6f 74 20 6f |shar: wi|ll not o|
|00002810| 76 65 72 2d 77 72 69 74 | 65 20 65 78 69 73 74 69 |ver-writ|e existi|
|00002820| 6e 67 20 66 69 6c 65 20 | 22 27 6c 69 73 74 27 22 |ng file |"'list'"|
|00002830| 0a 65 6c 73 65 0a 73 65 | 64 20 27 73 2f 5e 58 2f |.else.se|d 's/^X/|
|00002840| 2f 27 20 3c 3c 20 5c 53 | 48 41 52 5f 45 4f 46 20 |/' << \S|HAR_EOF |
|00002850| 3e 20 27 6c 69 73 74 27 | 0a 58 23 20 54 68 69 73 |> 'list'|.X# This|
|00002860| 20 66 69 6c 65 20 63 6f | 6e 74 61 69 6e 73 20 61 | file co|ntains a|
|00002870| 20 6c 69 73 74 20 6f 66 | 20 66 69 6c 65 73 20 74 | list of| files t|
|00002880| 68 61 74 20 61 72 65 20 | 63 68 65 63 6b 65 64 20 |hat are |checked |
|00002890| 66 6f 72 20 63 68 61 6e | 67 65 73 20 28 6d 70 62 |for chan|ges (mpb|
|000028a0| 32 31 4f 63 74 38 39 29 | 0a 58 23 20 28 74 68 69 |21Oct89)|.X# (thi|
|000028b0| 73 20 69 73 20 66 6f 72 | 20 61 6e 20 55 4c 54 52 |s is for| an ULTR|
|000028c0| 49 58 20 73 79 73 74 65 | 6d 2c 20 65 64 69 74 20 |IX syste|m, edit |
|000028d0| 66 6f 72 20 6f 74 68 65 | 72 20 66 6c 61 76 6f 75 |for othe|r flavou|
|000028e0| 72 73 29 0a 58 0a 58 2f | 2e 72 68 6f 73 74 73 0a |rs).X.X/|.rhosts.|
|000028f0| 58 2f 65 74 63 2f 65 78 | 70 6f 72 74 73 0a 58 2f |X/etc/ex|ports.X/|
|00002900| 65 74 63 2f 66 73 74 61 | 62 0a 58 2f 65 74 63 2f |etc/fsta|b.X/etc/|
|00002910| 67 72 6f 75 70 0a 58 2f | 65 74 63 2f 68 6f 73 74 |group.X/|etc/host|
|00002920| 73 0a 58 2f 65 74 63 2f | 68 6f 73 74 73 2e 65 71 |s.X/etc/|hosts.eq|
|00002930| 75 69 76 0a 58 2f 65 74 | 63 2f 70 61 73 73 77 64 |uiv.X/et|c/passwd|
|00002940| 0a 58 2f 65 74 63 2f 72 | 63 0a 58 2f 65 74 63 2f |.X/etc/r|c.X/etc/|
|00002950| 72 63 2e 6c 6f 63 61 6c | 0a 58 2f 75 73 72 2f 62 |rc.local|.X/usr/b|
|00002960| 69 6e 2f 6c 6f 67 69 6e | 0a 58 2f 75 73 72 2f 62 |in/login|.X/usr/b|
|00002970| 69 6e 2f 70 61 73 73 77 | 64 0a 58 2f 75 73 72 2f |in/passw|d.X/usr/|
|00002980| 62 69 6e 2f 73 75 0a 58 | 2f 75 73 72 2f 6c 69 62 |bin/su.X|/usr/lib|
|00002990| 2f 61 6c 69 61 73 65 73 | 0a 58 2f 75 73 72 2f 6c |/aliases|.X/usr/l|
|000029a0| 69 62 2f 63 72 6f 6e 74 | 61 62 0a 58 2f 75 73 72 |ib/cront|ab.X/usr|
|000029b0| 2f 6c 69 62 2f 6d 61 69 | 6c 2e 61 6c 69 61 73 65 |/lib/mai|l.aliase|
|000029c0| 73 0a 58 2f 75 73 72 2f | 6c 69 62 2f 73 65 6e 64 |s.X/usr/|lib/send|
|000029d0| 6d 61 69 6c 2e 63 66 0a | 58 2f 75 73 72 2f 6c 6f |mail.cf.|X/usr/lo|
|000029e0| 63 61 6c 2f 6c 69 62 2f | 73 79 73 77 61 74 63 68 |cal/lib/|syswatch|
|000029f0| 0a 58 2f 75 73 72 2f 6c | 6f 63 61 6c 2f 6c 69 62 |.X/usr/l|ocal/lib|
|00002a00| 2f 77 61 74 63 68 65 72 | 2f 44 61 65 6d 6f 6e 73 |/watcher|/Daemons|
|00002a10| 0a 58 2f 75 73 72 2f 6c | 6f 63 61 6c 2f 6c 69 62 |.X/usr/l|ocal/lib|
|00002a20| 2f 77 61 74 63 68 65 72 | 2f 4f 53 46 48 6f 73 74 |/watcher|/OSFHost|
|00002a30| 73 0a 58 2f 75 73 72 2f | 6c 6f 63 61 6c 2f 6c 69 |s.X/usr/|local/li|
|00002a40| 62 2f 77 61 74 63 68 65 | 72 2f 57 61 74 63 68 65 |b/watche|r/Watche|
|00002a50| 72 66 69 6c 65 0a 58 2f | 75 73 72 2f 76 61 72 2f |rfile.X/|usr/var/|
|00002a60| 79 70 2f 73 72 63 2f 67 | 72 6f 75 70 0a 58 2f 75 |yp/src/g|roup.X/u|
|00002a70| 73 72 2f 76 61 72 2f 79 | 70 2f 73 72 63 2f 68 6f |sr/var/y|p/src/ho|
|00002a80| 73 74 73 0a 58 2f 75 73 | 72 2f 76 61 72 2f 79 70 |sts.X/us|r/var/yp|
|00002a90| 2f 73 72 63 2f 6e 65 74 | 67 72 6f 75 70 0a 58 2f |/src/net|group.X/|
|00002aa0| 75 73 72 2f 76 61 72 2f | 79 70 2f 73 72 63 2f 6e |usr/var/|yp/src/n|
|00002ab0| 65 74 77 6f 72 6b 73 0a | 58 2f 75 73 72 2f 76 61 |etworks.|X/usr/va|
|00002ac0| 72 2f 79 70 2f 73 72 63 | 2f 70 61 73 73 77 64 0a |r/yp/src|/passwd.|
|00002ad0| 58 2f 75 73 72 2f 76 61 | 72 2f 79 70 2f 73 72 63 |X/usr/va|r/yp/src|
|00002ae0| 2f 70 72 6f 74 6f 63 6f | 6c 73 0a 58 2f 75 73 72 |/protoco|ls.X/usr|
|00002af0| 2f 76 61 72 2f 79 70 2f | 73 72 63 2f 72 70 63 0a |/var/yp/|src/rpc.|
|00002b00| 58 2f 75 73 72 2f 76 61 | 72 2f 79 70 2f 73 72 63 |X/usr/va|r/yp/src|
|00002b10| 2f 73 65 72 76 69 63 65 | 73 0a 58 2f 75 73 72 2f |/service|s.X/usr/|
|00002b20| 76 61 72 2f 79 70 2f 73 | 72 63 2f 79 70 73 65 72 |var/yp/s|rc/ypser|
|00002b30| 76 65 72 73 0a 53 48 41 | 52 5f 45 4f 46 0a 66 69 |vers.SHA|R_EOF.fi|
|00002b40| 20 23 20 65 6e 64 20 6f | 66 20 6f 76 65 72 77 72 | # end o|f overwr|
|00002b50| 69 74 69 6e 67 20 63 68 | 65 63 6b 0a 65 63 68 6f |iting ch|eck.echo|
|00002b60| 20 73 68 61 72 3a 20 65 | 78 74 72 61 63 74 69 6e | shar: e|xtractin|
|00002b70| 67 20 22 27 72 65 73 65 | 74 66 69 6c 65 73 27 22 |g "'rese|tfiles'"|
|00002b80| 20 27 28 32 30 30 39 20 | 63 68 61 72 61 63 74 65 | '(2009 |characte|
|00002b90| 72 73 29 27 0a 69 66 20 | 74 65 73 74 20 2d 66 20 |rs)'.if |test -f |
|00002ba0| 27 72 65 73 65 74 66 69 | 6c 65 73 27 0a 74 68 65 |'resetfi|les'.the|
|00002bb0| 6e 0a 09 65 63 68 6f 20 | 73 68 61 72 3a 20 77 69 |n..echo |shar: wi|
|00002bc0| 6c 6c 20 6e 6f 74 20 6f | 76 65 72 2d 77 72 69 74 |ll not o|ver-writ|
|00002bd0| 65 20 65 78 69 73 74 69 | 6e 67 20 66 69 6c 65 20 |e existi|ng file |
|00002be0| 22 27 72 65 73 65 74 66 | 69 6c 65 73 27 22 0a 65 |"'resetf|iles'".e|
|00002bf0| 6c 73 65 0a 73 65 64 20 | 27 73 2f 5e 58 2f 2f 27 |lse.sed |'s/^X//'|
|00002c00| 20 3c 3c 20 5c 53 48 41 | 52 5f 45 4f 46 20 3e 20 | << \SHA|R_EOF > |
|00002c10| 27 72 65 73 65 74 66 69 | 6c 65 73 27 0a 58 23 21 |'resetfi|les'.X#!|
|00002c20| 2f 62 69 6e 2f 73 68 35 | 0a 58 23 20 4e 41 4d 45 |/bin/sh5|.X# NAME|
|00002c30| 09 09 72 65 73 65 74 66 | 69 6c 65 73 0a 58 23 20 |..resetf|iles.X# |
|00002c40| 41 55 54 48 4f 52 09 50 | 61 75 6c 20 42 6c 61 63 |AUTHOR.P|aul Blac|
|00002c50| 6b 62 75 72 6e 2c 20 4f | 53 46 2c 20 4d 75 6e 69 |kburn, O|SF, Muni|
|00002c60| 63 68 0a 58 23 20 44 41 | 54 45 09 09 53 61 74 20 |ch.X# DA|TE..Sat |
|00002c70| 4f 63 74 20 32 31 20 31 | 31 3a 35 32 3a 30 35 20 |Oct 21 1|1:52:05 |
|00002c80| 4d 45 54 20 31 39 38 39 | 0a 58 23 20 50 55 52 50 |MET 1989|.X# PURP|
|00002c90| 4f 53 45 09 52 65 2d 63 | 72 65 61 74 65 73 20 74 |OSE.Re-c|reates t|
|00002ca0| 68 65 20 72 65 66 65 72 | 65 6e 63 65 20 63 6f 70 |he refer|ence cop|
|00002cb0| 69 65 73 20 66 6f 72 20 | 63 68 65 63 6b 66 69 6c |ies for |checkfil|
|00002cc0| 65 73 20 74 6f 20 63 68 | 65 63 6b 20 61 67 61 69 |es to ch|eck agai|
|00002cd0| 6e 73 74 0a 58 0a 58 50 | 41 54 48 3d 2f 75 73 72 |nst.X.XP|ATH=/usr|
|00002ce0| 2f 75 63 62 3a 2f 62 69 | 6e 3a 2f 75 73 72 2f 62 |/ucb:/bi|n:/usr/b|
|00002cf0| 69 6e 0a 58 65 78 70 6f | 72 74 20 50 41 54 48 0a |in.Xexpo|rt PATH.|
|00002d00| 58 49 46 53 3d 22 20 09 | 0a 58 22 0a 58 65 78 70 |XIFS=" .|.X".Xexp|
|00002d10| 6f 72 74 20 49 46 53 0a | 58 0a 58 42 41 53 45 3d |ort IFS.|X.XBASE=|
|00002d20| 2f 75 73 65 72 73 2f 6d | 70 62 2f 6d 61 73 74 65 |/users/m|pb/maste|
|00002d30| 72 73 0a 58 4d 41 53 54 | 45 52 3d 6f 73 66 6d 75 |rs.XMAST|ER=osfmu|
|00002d40| 63 0a 58 0a 58 4c 49 53 | 54 3d 24 7b 42 41 53 45 |c.X.XLIS|T=${BASE|
|00002d50| 7d 2f 6c 69 73 74 0a 58 | 4f 52 49 47 3d 24 7b 42 |}/list.X|ORIG=${B|
|00002d60| 41 53 45 7d 2f 6f 72 69 | 67 69 6e 61 6c 73 0a 58 |ASE}/ori|ginals.X|
|00002d70| 4d 41 4b 45 3d 24 7b 42 | 41 53 45 7d 2f 4d 61 6b |MAKE=${B|ASE}/Mak|
|00002d80| 65 66 69 6c 65 2e 72 65 | 0a 58 54 45 4d 50 3d 2f |efile.re|.XTEMP=/|
|00002d90| 75 73 72 2f 74 6d 70 2f | 72 65 73 65 74 2e 24 24 |usr/tmp/|reset.$$|
|00002da0| 0a 58 43 4d 44 3d 60 62 | 61 73 65 6e 61 6d 65 20 |.XCMD=`b|asename |
|00002db0| 24 7b 30 7d 60 0a 58 0a | 58 69 66 20 5b 20 22 24 |${0}`.X.|Xif [ "$|
|00002dc0| 7b 4d 41 53 54 45 52 7d | 22 20 21 3d 20 22 60 75 |{MASTER}|" != "`u|
|00002dd0| 75 6e 61 6d 65 20 2d 6c | 60 22 20 5d 0a 58 74 68 |uname -l|`" ].Xth|
|00002de0| 65 6e 0a 58 09 65 63 68 | 6f 20 22 45 72 72 6f 72 |en.X.ech|o "Error|
|00002df0| 3a 20 24 7b 43 4d 44 7d | 20 73 68 6f 75 6c 64 20 |: ${CMD}| should |
|00002e00| 62 65 20 65 78 65 63 75 | 74 65 64 20 6f 6e 20 24 |be execu|ted on $|
|00002e10| 7b 4d 41 53 54 45 52 7d | 22 20 3e 26 32 0a 58 09 |{MASTER}|" >&2.X.|
|00002e20| 65 78 69 74 20 31 0a 58 | 66 69 0a 58 0a 58 69 66 |exit 1.X|fi.X.Xif|
|00002e30| 20 5b 20 2d 64 20 22 24 | 7b 42 41 53 45 7d 22 20 | [ -d "$|{BASE}" |
|00002e40| 5d 0a 58 74 68 65 6e 0a | 58 09 63 64 20 24 42 41 |].Xthen.|X.cd $BA|
|00002e50| 53 45 0a 58 65 6c 73 65 | 0a 58 09 65 63 68 6f 20 |SE.Xelse|.X.echo |
|00002e60| 22 24 7b 43 4d 44 7d 3a | 20 75 6e 61 62 6c 65 20 |"${CMD}:| unable |
|00002e70| 74 6f 20 63 64 20 74 6f | 20 24 7b 42 41 53 45 7d |to cd to| ${BASE}|
|00002e80| 22 20 3e 26 32 0a 58 09 | 65 78 69 74 20 31 0a 58 |" >&2.X.|exit 1.X|
|00002e90| 66 69 0a 58 0a 58 54 4d | 50 31 3d 2f 75 73 72 2f |fi.X.XTM|P1=/usr/|
|00002ea0| 74 6d 70 2f 74 6d 70 31 | 2e 24 24 0a 58 54 4d 50 |tmp/tmp1|.$$.XTMP|
|00002eb0| 32 3d 2f 75 73 72 2f 74 | 6d 70 2f 74 6d 70 32 2e |2=/usr/t|mp/tmp2.|
|00002ec0| 24 24 0a 58 54 4d 50 33 | 3d 2f 75 73 72 2f 74 6d |$$.XTMP3|=/usr/tm|
|00002ed0| 70 2f 74 6d 70 33 2e 24 | 24 0a 58 0a 58 69 66 20 |p/tmp3.$|$.X.Xif |
|00002ee0| 5b 20 21 20 2d 7a 20 22 | 24 7b 44 45 42 55 47 7d |[ ! -z "|${DEBUG}|
|00002ef0| 22 20 5d 0a 58 74 68 65 | 6e 0a 58 09 65 63 68 6f |" ].Xthe|n.X.echo|
|00002f00| 20 22 45 78 74 72 61 63 | 74 69 6e 67 20 66 72 6f | "Extrac|ting fro|
|00002f10| 6d 20 6c 69 73 74 22 0a | 58 66 69 0a 58 0a 58 63 |m list".|Xfi.X.Xc|
|00002f20| 64 20 24 7b 42 41 53 45 | 7d 0a 58 67 72 65 70 20 |d ${BASE|}.Xgrep |
|00002f30| 2d 76 20 22 5e 23 22 20 | 3c 24 4c 49 53 54 20 7c |-v "^#" |<$LIST ||
|00002f40| 20 73 65 64 20 2d 65 20 | 22 2f 5e 24 2f 64 22 20 | sed -e |"/^$/d" |
|00002f50| 7c 20 63 75 74 20 2d 63 | 32 2d 20 7c 20 73 6f 72 || cut -c|2- | sor|
|00002f60| 74 20 3e 24 7b 54 4d 50 | 31 7d 0a 58 0a 58 69 66 |t >${TMP|1}.X.Xif|
|00002f70| 20 5b 20 21 20 2d 7a 20 | 22 24 7b 44 45 42 55 47 | [ ! -z |"${DEBUG|
|00002f80| 7d 22 20 5d 0a 58 74 68 | 65 6e 0a 58 09 65 63 68 |}" ].Xth|en.X.ech|
|00002f90| 6f 20 22 43 72 65 61 74 | 69 6e 67 20 6c 69 73 74 |o "Creat|ing list|
|00002fa0| 20 66 72 6f 6d 20 6f 72 | 69 67 69 6e 61 6c 73 22 | from or|iginals"|
|00002fb0| 0a 58 66 69 0a 58 0a 58 | 63 64 20 24 7b 4f 52 49 |.Xfi.X.X|cd ${ORI|
|00002fc0| 47 7d 0a 58 66 69 6e 64 | 20 2e 20 2d 74 79 70 65 |G}.Xfind| . -type|
|00002fd0| 20 66 20 2d 70 72 69 6e | 74 20 7c 20 63 75 74 20 | f -prin|t | cut |
|00002fe0| 2d 63 33 2d 20 7c 20 73 | 6f 72 74 20 3e 24 7b 54 |-c3- | s|ort >${T|
|00002ff0| 4d 50 32 7d 0a 58 0a 58 | 69 66 20 5b 20 21 20 2d |MP2}.X.X|if [ ! -|
|00003000| 7a 20 22 24 7b 44 45 42 | 55 47 7d 22 20 5d 0a 58 |z "${DEB|UG}" ].X|
|00003010| 74 68 65 6e 0a 58 09 65 | 63 68 6f 20 22 43 6f 6d |then.X.e|cho "Com|
|00003020| 70 61 72 69 6e 67 20 74 | 77 6f 20 6c 69 73 74 73 |paring t|wo lists|
|00003030| 22 0a 58 66 69 0a 58 0a | 58 63 6f 6d 6d 20 2d 31 |".Xfi.X.|Xcomm -1|
|00003040| 33 20 24 7b 54 4d 50 31 | 7d 20 24 7b 54 4d 50 32 |3 ${TMP1|} ${TMP2|
|00003050| 7d 20 3e 24 7b 54 4d 50 | 33 7d 0a 58 0a 58 69 66 |} >${TMP|3}.X.Xif|
|00003060| 20 5b 20 2d 73 20 24 7b | 54 4d 50 33 7d 20 5d 0a | [ -s ${|TMP3} ].|
|00003070| 58 74 68 65 6e 0a 58 0a | 58 09 69 66 20 5b 20 21 |Xthen.X.|X.if [ !|
|00003080| 20 2d 7a 20 22 24 7b 44 | 45 42 55 47 7d 22 20 5d | -z "${D|EBUG}" ]|
|00003090| 0a 58 09 74 68 65 6e 0a | 58 09 09 65 63 68 6f 20 |.X.then.|X..echo |
|000030a0| 22 52 65 6d 6f 76 69 6e | 67 20 75 6e 77 61 6e 74 |"Removin|g unwant|
|000030b0| 65 64 20 66 69 6c 65 73 | 20 66 72 6f 6d 20 6f 72 |ed files| from or|
|000030c0| 69 67 69 6e 61 6c 73 22 | 0a 58 09 66 69 0a 58 0a |iginals"|.X.fi.X.|
|000030d0| 58 09 3c 24 7b 54 4d 50 | 33 7d 20 78 61 72 67 73 |X.<${TMP|3} xargs|
|000030e0| 20 2d 74 20 72 6d 20 2d | 66 0a 58 66 69 0a 58 0a | -t rm -|f.Xfi.X.|
|000030f0| 58 69 66 20 5b 20 21 20 | 2d 7a 20 22 24 7b 44 45 |Xif [ ! |-z "${DE|
|00003100| 42 55 47 7d 22 20 5d 0a | 58 74 68 65 6e 0a 58 09 |BUG}" ].|Xthen.X.|
|00003110| 65 63 68 6f 20 22 52 65 | 6d 6f 76 69 6e 67 20 74 |echo "Re|moving t|
|00003120| 65 6d 70 6f 72 61 72 79 | 20 66 69 6c 65 73 22 0a |emporary| files".|
|00003130| 58 66 69 0a 58 0a 58 72 | 6d 20 24 7b 54 4d 50 31 |Xfi.X.Xr|m ${TMP1|
|00003140| 7d 20 24 7b 54 4d 50 32 | 7d 20 24 7b 54 4d 50 33 |} ${TMP2|} ${TMP3|
|00003150| 7d 0a 58 0a 58 23 20 43 | 72 65 61 74 65 20 61 20 |}.X.X# C|reate a |
|00003160| 4d 61 6b 65 66 69 6c 65 | 20 66 72 6f 6d 20 4c 49 |Makefile| from LI|
|00003170| 53 54 0a 58 0a 58 69 66 | 20 5b 20 21 20 2d 7a 20 |ST.X.Xif| [ ! -z |
|00003180| 22 24 7b 44 45 42 55 47 | 7d 22 20 5d 0a 58 74 68 |"${DEBUG|}" ].Xth|
|00003190| 65 6e 0a 58 09 65 63 68 | 6f 20 22 43 72 65 61 74 |en.X.ech|o "Creat|
|000031a0| 69 6e 67 20 4d 61 6b 65 | 66 69 6c 65 22 0a 58 66 |ing Make|file".Xf|
|000031b0| 69 0a 58 0a 58 63 61 74 | 20 3c 3c 65 65 6f 6f 66 |i.X.Xcat| <<eeoof|
|000031c0| 66 20 3e 24 4d 41 4b 45 | 0a 58 23 20 4d 61 6b 65 |f >$MAKE|.X# Make|
|000031d0| 66 69 6c 65 20 74 6f 20 | 72 65 62 75 69 6c 64 20 |file to |rebuild |
|000031e0| 6f 72 69 67 69 6e 61 6c | 20 66 69 6c 65 20 63 6f |original| file co|
|000031f0| 70 69 65 73 0a 58 23 20 | 67 65 6e 65 72 61 74 65 |pies.X# |generate|
|00003200| 64 20 62 79 20 60 75 75 | 6e 61 6d 65 20 2d 6c 60 |d by `uu|name -l`|
|00003210| 3a 24 55 53 45 52 20 6f | 6e 20 60 64 61 74 65 60 |:$USER o|n `date`|
|00003220| 0a 58 0a 58 4f 52 49 47 | 3d 24 7b 4f 52 49 47 7d |.X.XORIG|=${ORIG}|
|00003230| 0a 58 0a 58 61 6c 6c 3a | 09 5c 5c 0a 58 65 65 6f |.X.Xall:|.\\.Xeeo|
|00003240| 6f 66 66 0a 58 0a 58 69 | 66 20 5b 20 21 20 2d 7a |off.X.Xi|f [ ! -z|
|00003250| 20 22 24 7b 44 45 42 55 | 47 7d 22 20 5d 0a 58 74 | "${DEBU|G}" ].Xt|
|00003260| 68 65 6e 0a 58 09 65 63 | 68 6f 20 22 43 72 65 61 |hen.X.ec|ho "Crea|
|00003270| 74 69 6e 67 20 61 6c 6c | 20 64 65 70 65 6e 64 65 |ting all| depende|
|00003280| 6e 63 69 65 73 22 0a 58 | 66 69 0a 58 0a 58 67 72 |ncies".X|fi.X.Xgr|
|00003290| 65 70 20 2d 76 20 22 5e | 23 22 20 3c 24 4c 49 53 |ep -v "^|#" <$LIS|
|000032a0| 54 20 5c 0a 58 7c 20 73 | 65 64 20 2d 65 20 22 2f |T \.X| s|ed -e "/|
|000032b0| 5e 24 2f 64 22 20 5c 0a | 58 7c 20 63 75 74 20 2d |^$/d" \.|X| cut -|
|000032c0| 63 32 2d 20 3e 24 7b 54 | 45 4d 50 7d 0a 58 0a 58 |c2- >${T|EMP}.X.X|
|000032d0| 73 65 64 20 2d 65 20 22 | 73 2f 2e 24 2f 26 5c 5c |sed -e "|s/.$/&\\|
|000032e0| 5c 5c 2f 22 20 3c 24 7b | 54 45 4d 50 7d 5c 0a 58 |\\/" <${|TEMP}\.X|
|000032f0| 7c 20 73 65 64 20 2d 65 | 20 22 73 2c 5e 2e 2c 5c || sed -e| "s,^.,\|
|00003300| 09 5c 24 28 4f 52 49 47 | 29 2f 26 2c 22 20 3e 3e |.\$(ORIG|)/&," >>|
|00003310| 24 4d 41 4b 45 0a 58 0a | 58 65 63 68 6f 20 22 5c |$MAKE.X.|Xecho "\|
|00003320| 74 24 7b 42 41 53 45 7d | 2f 52 45 41 44 4d 45 22 |t${BASE}|/README"|
|00003330| 20 3e 3e 20 24 4d 41 4b | 45 0a 58 0a 58 77 68 69 | >> $MAK|E.X.Xwhi|
|00003340| 6c 65 20 46 49 4c 45 3d | 60 6c 69 6e 65 60 0a 58 |le FILE=|`line`.X|
|00003350| 64 6f 0a 58 09 63 61 74 | 20 3c 3c 65 65 6f 6f 66 |do.X.cat| <<eeoof|
|00003360| 66 20 3e 3e 24 4d 41 4b | 45 0a 58 0a 58 5c 24 28 |f >>$MAK|E.X.X\$(|
|00003370| 4f 52 49 47 29 2f 24 7b | 46 49 4c 45 7d 3a 09 2f |ORIG)/${|FILE}:./|
|00003380| 24 46 49 4c 45 0a 58 09 | 63 64 20 2f 3b 20 65 63 |$FILE.X.|cd /; ec|
|00003390| 68 6f 20 24 7b 46 49 4c | 45 7d 20 7c 20 63 70 69 |ho ${FIL|E} | cpi|
|000033a0| 6f 20 2d 70 64 6d 75 76 | 61 20 5c 24 28 4f 52 49 |o -pdmuv|a \$(ORI|
|000033b0| 47 29 0a 58 65 65 6f 6f | 66 66 0a 58 64 6f 6e 65 |G).Xeeoo|ff.Xdone|
|000033c0| 20 3c 24 7b 54 45 4d 50 | 7d 0a 58 72 6d 20 24 7b | <${TEMP|}.Xrm ${|
|000033d0| 54 45 4d 50 7d 0a 58 0a | 58 69 66 20 5b 20 21 20 |TEMP}.X.|Xif [ ! |
|000033e0| 2d 7a 20 22 24 7b 44 45 | 42 55 47 7d 22 20 5d 0a |-z "${DE|BUG}" ].|
|000033f0| 58 74 68 65 6e 0a 58 09 | 65 63 68 6f 20 22 45 78 |Xthen.X.|echo "Ex|
|00003400| 65 63 75 74 69 6e 67 20 | 4d 61 6b 65 66 69 6c 65 |ecuting |Makefile|
|00003410| 22 0a 58 66 69 0a 58 0a | 58 6d 61 6b 65 20 2d 66 |".Xfi.X.|Xmake -f|
|00003420| 20 24 7b 4d 41 4b 45 7d | 0a 58 0a 58 69 66 20 5b | ${MAKE}|.X.Xif [|
|00003430| 20 21 20 2d 7a 20 22 24 | 7b 44 45 42 55 47 7d 22 | ! -z "$|{DEBUG}"|
|00003440| 20 5d 0a 58 74 68 65 6e | 0a 58 09 65 63 68 6f 20 | ].Xthen|.X.echo |
|00003450| 22 44 65 6c 65 74 69 6e | 67 20 4d 61 6b 65 66 69 |"Deletin|g Makefi|
|00003460| 6c 65 22 0a 58 66 69 0a | 58 0a 58 72 6d 20 24 7b |le".Xfi.|X.Xrm ${|
|00003470| 4d 41 4b 45 7d 0a 58 65 | 78 69 74 0a 53 48 41 52 |MAKE}.Xe|xit.SHAR|
|00003480| 5f 45 4f 46 0a 63 68 6d | 6f 64 20 2b 78 20 27 72 |_EOF.chm|od +x 'r|
|00003490| 65 73 65 74 66 69 6c 65 | 73 27 0a 66 69 20 23 20 |esetfile|s'.fi # |
|000034a0| 65 6e 64 20 6f 66 20 6f | 76 65 72 77 72 69 74 69 |end of o|verwriti|
|000034b0| 6e 67 20 63 68 65 63 6b | 0a 69 66 20 74 65 73 74 |ng check|.if test|
|000034c0| 20 21 20 2d 64 20 27 6f | 72 69 67 69 6e 61 6c 73 | ! -d 'o|riginals|
|000034d0| 27 0a 74 68 65 6e 0a 09 | 65 63 68 6f 20 73 68 61 |'.then..|echo sha|
|000034e0| 72 3a 20 63 72 65 61 74 | 69 6e 67 20 64 69 72 65 |r: creat|ing dire|
|000034f0| 63 74 6f 72 79 20 22 27 | 6f 72 69 67 69 6e 61 6c |ctory "'|original|
|00003500| 73 27 22 0a 09 6d 6b 64 | 69 72 20 27 6f 72 69 67 |s'"..mkd|ir 'orig|
|00003510| 69 6e 61 6c 73 27 0a 66 | 69 0a 65 63 68 6f 20 73 |inals'.f|i.echo s|
|00003520| 68 61 72 3a 20 65 6e 74 | 65 72 69 6e 67 20 64 69 |har: ent|ering di|
|00003530| 72 65 63 74 6f 72 79 20 | 22 27 6f 72 69 67 69 6e |rectory |"'origin|
|00003540| 61 6c 73 27 22 0a 63 64 | 20 27 6f 72 69 67 69 6e |als'".cd| 'origin|
|00003550| 61 6c 73 27 0a 65 63 68 | 6f 20 73 68 61 72 3a 20 |als'.ech|o shar: |
|00003560| 64 6f 6e 65 20 77 69 74 | 68 20 64 69 72 65 63 74 |done wit|h direct|
|00003570| 6f 72 79 20 22 27 6f 72 | 69 67 69 6e 61 6c 73 27 |ory "'or|iginals'|
|00003580| 22 0a 63 64 20 2e 2e 0a | 65 63 68 6f 20 73 68 61 |".cd ...|echo sha|
|00003590| 72 3a 20 64 6f 6e 65 20 | 77 69 74 68 20 64 69 72 |r: done |with dir|
|000035a0| 65 63 74 6f 72 79 20 22 | 27 63 68 65 63 6b 66 69 |ectory "|'checkfi|
|000035b0| 6c 65 73 27 22 0a 63 64 | 20 2e 2e 0a 23 09 45 6e |les'".cd| ...#.En|
|000035c0| 64 20 6f 66 20 73 68 65 | 6c 6c 20 61 72 63 68 69 |d of she|ll archi|
|000035d0| 76 65 0a 65 78 69 74 20 | 30 0a 0a |ve.exit |0.. |
+--------+-------------------------+-------------------------+--------+--------+