[plug] script error

Jon Miller jlmiller at mmtnetworks.com.au
Thu Jan 12 10:38:38 WST 2006


I'm including the latest error and the code, what I'm not getting is while the function is not being called
gateway:/home/jlmiller# ./mailadd.sh test
du: `/db/mail/test': No such file or directory
FileA = test 4
FileB = test 64
FileA and FileB differ.
./mailadd.sh: line 36: chngacct: command not found

Code----
#!/bin/sh
# mailadd.sh - jlmiller
# program to recreate mail accounts 
#
# Changes record
# 11.01.2006 v.0.1
#  Initial coding 
#  12.01.2006 -first test run
#
# Procedure:
# read in file name from username file
# check if file exists in both /var/spool/mail and /db/mailtmp.
# check if the size of the files are the same or different.
# if same remove from /var/spool/mail if not move to /db/mail.
# recreate a mail file
# append old files to new files
# repeat with next name in file
#
# Variables
cmail=/var/spool/mail
omail=/db/mailtmp
tmail=/db/mail
# get the size of the file
fileA=`du -k $cmail/$1 | cut -f 1`
fileB=`du -k $omail/$1 | cut -f 1`
fileC=`du -k $tmail/$1 | cut -f 1`

# show file and size
echo "FileA = $1 $fileA"
echo "FileB = $1 $fileB"

# check if file A and fileB are the same or different
# if same recreate account
# if different move file to temp area
if [ $fileA == $fileB ] 
then 
  echo "FileA and FileB are identical."
  recreate                 # function call
else
  echo "FileA and FileB differ."
  chngacct              # function call
fi
exit 0
############ FUNCTION PROCEDURE ##############

function recreate()
{
# identical files - recreate mail file
rm $cmail/$fileA
mail $1 -s "testing" </dev/null
cat $omail/$1 >> $cmail/$1
$fileA
echo "Finish $fileA"
}


function chngacct()
{
# different files - move to temp area, recreate and append old mail to new mail
$fileA
mv $cmail/$fileA $tmail
$fileC
rm $cmail/$fileA
mail $1 -s "testing" </dev/null
cat $omail/$1 >> $cmail/$1
cat $tmail/$1 >> $cmail/$1
$fileA
echo " Finish $fileA"
}



Thanks

>>> troll at arach.net.au 9:32:28 am 12/01/2006 >>>
On Thursday 12 January 2006 09:39, Jon Miller wrote:
> Did that a few minutes ago and still same error.
> 
> Jon
> 
> >>> troll at arach.net.au 9:22:57 am 12/01/2006 >>>
> On Thursday 12 January 2006 08:06, Jon Miller wrote:
> > I've tried looking how to construct this and I keep getting the same error
> > 
> > syntax error near unexpected token `else'
> > 
> > if [ $fileA == $fileB ]; then                         # compare files
try 
if [ "$fileA" == "$fileB" ]
 then
> >   echo "FileA and FileB are identical."
> >   recreate()                                                 # run function
> >   else
> >   echo "FileA and FileB differ."
> >   chngacct()                                                # run function
> > fi

-- 
regs MR E_T
_______________________
\                      \
  \   OOHH I hate TYPOS  \
    \                      \
      ~~~~~~~~~~~~~~~~~~~~~~~
_______________________________________________
PLUG discussion list: plug at plug.org.au 
http://www.plug.org.au/mailman/listinfo/plug 
Committee e-mail: committee at plug.linux.org.au




More information about the plug mailing list