I'm new to Shell script. Can anyone tell me where is the wrong in my code?
And, my code is --
echo "Enter Start Date(YYYY-MM-DD): "
read stdt
echo "Enter End Date(YYYY-MM-DD): "
read endt
echo "Enter Flight Number(Optional): "
read fln
echo "Enter Output XML File Name(Including Extension): "
read dst
#if [ $fln eq "" ] then
#if [ "$fln" = "" ] then
if [ $? -lt 3 ] then
java DailyScheduleExport $stdt $endt> $dst
else
java DailyScheduleExport $stdt $endt $fln> $dst
fi
Waiting for your reply.
And the error is --
ods@awhq6640[/prod/ods/sqlj/ods_services]>sh DailyScheduleExport_q.ksh
DailyScheduleExport_q.ksh[2]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[4]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[6]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[8]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[9]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[12]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[13]: ^M: Execute permission denied.
Enter Start Date(YYYY-MM-DD):
2007-01-01
DailyScheduleExport_q.ksh[16]: ^M: This is not an identifier.
DailyScheduleExport_q.ksh[17]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[18]: ^M: Execute permission denied.
Enter End Date(YYYY-MM-DD):
2007-09-21
DailyScheduleExport_q.ksh[20]: ^M: This is not an identifier.
DailyScheduleExport_q.ksh[21]: ^M: Execute permission denied.
Enter Flight Number(Optional):
DailyScheduleExport_q.ksh[23]: fln^M: This is not an identifier.
DailyScheduleExport_q.ksh[24]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[25]: ^M: Execute permission denied.
Enter Output XML File Name(Including Extension):
DailyScheduleExport_q.ksh[27]: dst^M: This is not an identifier.
DailyScheduleExport_q.ksh[28]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[31]: ^M: Execute permission denied.
DailyScheduleExport_q.ksh[32]: Syntax error at line 32 : `if' is not matched.
ods@awhq6640[/prod/ods/sqlj/ods_services]>
Looks like you may have extraneous "Control-M" characters in your file. Open it in vi to see. This occurs sometimes when porting a DOS/Windows file to Unix. You can delete them one by one or run the command: dos2unix. If your OS doesn't have this command look for one by typing: man -k dos.
Ya you are right there is Ctrl+M character in my shell file, basically i import these file from windows. And, i don't have dos2unix installed in this os. Now, can you show me how to delete these character from my shell file?