The * within the quotes will not be expanded. Is there just one file? Try filename=dfm_daily_file_*.dat , then. If there's more than one single file, use sth. like find , but you'll need to specify the target date anyhow
#!/bin/ksh
for filename in dfm_daily_file_*.dat
do
echo "Sending File $filename by FTP"
ftp_file "RTM_SERVER" "$filename"
if [ $? -ne 0 ]
then
echo "errror in sending file"
fin_anormale $0
fi
rm -f "$SRDS_LA/$filename"
done
fin_normale $0
It is just a suggestion for a couple of changes relative to your code. I do not know the validity of the rest of your code...