Unix script rm behaiving differently in difference machine

Hi All

The below is the script, if i supply the script with the argument -f then it will delete the tmp file . We are having 3 unix system out of that two system are processing this file only one system is not processing and the error showin is below the script ..

can you please help me

#! /bin/ksh
if [ $# -eq 0 ]
then
Echo " Usage incorrect"
fi

if [ "$1" = "-f" ]
then
print "Home Dir : ${HOMEDIR} Unix User : ${UNXUSER}"
rm -f ~/clean_tmp_* 2> /dev/null
fi
.......

Home Dir : /pps Unix User : pct
/pps/clean_tmp_cmd[2]: +390: not found
^[&dE Error in file find/delete ^[&d@
{} not found
; not found
^[&dE Error in file find/delete ^[&d@

The line:

Will remove files called clean_tmp_* from the user running the scripts home directory, hence:

rather than the expected:

/pps/pct/clean_tmp_cmd

${HOME} is the standard variable for a user's home directory, don't know where ${HOMEDIR} comes from?

${LOGNAME} or ${USER} are the normal variables holding the username, don't know where ${UNXUSER} comes from?

If /pps is really the intended directory it would be interesting to see the output from:

ls -l /ppd/clean_tmp_*

because it looks like you "might" have some non-Unix compliant file names in there.

I'd also like to see what the user pct home directory is set to in /etc/passwd?

Thank you ..

HOMEDIR=~
UNXUSER=`whoami`

This is where the HOMEDIR and UNXUSER comes from

ls -l clean_tmp_*
-rwxrwxrwx 1 pct pw 83 Aug 4 10:55 /ppd/clean_tmp_cmd