|
DataMuseum.dkPresents historical artifacts from the history of: Regnecentalen RC-900 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Regnecentalen RC-900 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3968 (0xf80) Types: TextFile Notes: UNIX file Names: »check.COMMANDS«
└─⟦bee8f15db⟧ Bits:30004169/disk2.imd Uniplex II+ V.6 release 1.0 (dansk) └─⟦bee8f15db⟧ UNIX Filesystem └─⟦this⟧ »up/new/usr/UAP/install.cmds/check.COMMANDS«
: ' install.cmds/check.COMMANDS - briefly check functionality of commands used by UNIPLEX package L..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..R Usage: check.COMMANDS Exits: 0 - OK, or warning 1 - Specified command fails to operate in the way expected by install processing scripts. Error message displayed. Notes: 1. Some of the commands may actually be built-in, depending on the SHELL in use (eg: TEST) 2. The structure: "if (command .... ; exit 0) >/dev/null 2.&1" is used to test if the command is executable, on the basis that if it isnt, or is not found, the sub-shell will not process the "exit 0", and will abort with a non-0 exit code. 3. Set list for loop processing. This is to facilitate ease of expansion to allow this program to be called to check certain programs only ' PGM='chown chmod chgrp cp cmp expr find ln mv sed sort tr test' TMPFILE=chk.C$$ for PGM do BAD="Standard system utility \"$PGM\" does not operate correctly $BELL" case "$PGM" in cp) : Just test this is invokable if ( cp /etc/passwd /tmp; exit 0 ) >/dev/null 2>&1 ; then : Ran $PGM OK else echo "$BAD"; exit 1 fi ;; cmp) cp /etc/passwd $TMPFILE if cmp /etc/passwd $TMPFILE; then : OK else echo "$BAD"; exit 1 fi ;; chown|chmod|chgrp) : Just test these are invokable >$TMPFILE if ( $PGM 0 $TMPFILE ) ; then : Ran $PGM OK else echo "$BAD(\"$PGM 0 $TMPFILE\" failed!)"; exit 1 fi ;; expr) case `expr 1 + 2` in 3) ;; *) echo "$BAD(Cannot add 1 + 2 = 3!)"; exit 1;; esac ;; find) : No test - NOT.superuser will bomb if find failure!! ;; ln) cp /etc/passwd $TMPFILE rm -f $TMPFILE. if ( ln $TMPFILE $TMPFILE. ; exit 0 ) >/dev/null 2>&1 ; then : Ran $PGM OK - check the same cp $TMPFILE $TMPFILE, if cmp $TMPFILE, $TMPFILE. >/dev/null 2>&1 ; then : OK else echo "$BAD"; exit 1 fi else echo "$BAD"; exit 1 fi ;; mv) >$TMPFILE rm -f $TMPFILE. if ( mv $TMPFILE $TMPFILE. ; exit 0 ) >/dev/null 2>&1 ; then : Ran $PGM OK else echo "$BAD"; exit 1 fi ;; sed) F="`echo AB-CD-EF | sed 's/..-\(..\)-.*/\1/'`" case "$F" in CD) ;; *) echo "$BAD"; exit 1;; esac ;; sed) echo "A C B" | sort > $TMPFILE echo "A B C" | cmp - $TMPFILE case $? in 0) : OK;; *) echo "$BAD"; exit 1;; esac ;; tr) F="`echo aABD | tr ABD def`" case "$F" in adef) ;; *) echo "$BAD"; exit 1;; esac ;; 'test') F=/etc/passwd if test -f $F; then if test ! -f $F; then echo "$BAD(\"test ! -f $F\" passed!)" exit 1 fi else echo "$BAD(\"test -f $F\" failed!)" exit 1 fi F=/etc if test -d $F; then if test ! -d $F; then echo "$BAD(\"test ! -d $F\" passed!)" exit 1 fi else echo "$BAD(\"test -d $F\" failed!)" exit 1 fi if test -z "$F"; then echo "$BAD(\"test -z $F\" passed!)" exit 1 fi F='' if test ! -z "$F"; then echo "$BAD(\"test ! -z <null string>\" passed!)" exit 1 fi ;; * ) echo "Warning: untested command - \"$PGM\"" ;; esac done rm -f $TMPFILE* exit 0