This is a crude korn shell script that someone else wrote. I don't know much about using shell syntax and I'm not even sure if this is possible.
Is there any way for me to run this file and be prompted for the date so that I don't have to manually go into the script and change it each time?
For example, I want to replace the "1/12/09" with a variable that is taken from a user prompt.
#!/bin/ksh
./clear_old
./rooms_xls.pl 1/12/09
cd doors
./doors_xls.pl 1/12/09
If you want to be prompted (as opposed to passing the date in as a parameter), use the following logic (or something similar):
date=
while [ -z $date ]
do
echo -n 'Date? '
read date
done
That loop will continue to prompt for the date until the user enters something (anything) other than a simple RETURN.
If you want to add some simple validation, and you're using a version of KSH that's KSH93 or better, do something like this:
date=
while [ -z $date ]
do
echo -n 'Date? '
read date
if [[ $date =~ ^[0-9]{1,2}/[0-9]{1,2}/[0-9]{1,4}$ ]]
then
break
fi
date=
done
See the ksh93 man page for more info.