Multiple Inputs

Have tried the search, but nothing resembles what I'd like to accomplish. I am attempting to write a script that will allow the user to input a list of data at the command prompt, then the data is used by another script for processing. I am allowing the user a list of 10 members in order to process, but my current problem is that the user will have to hit <enter> however many times up to 10 if they have less than 10 members to include in the list. I'm guessing I need some conditional statement that tells the script to start processing the data if the user decides that they do not have 10 members. But I cannot seem to accomplish this.. Here's what I have below for that part of the script (as you can see, I am very new to this):

      echo "Paste your member list to port."
           read a         
           read b         
           read c        
           read d        
           read e        
           read f         
           read g        
           read g        
           read h        
           read i         
           read j         
           echo $a &gt;  list_file
           echo $b &gt;&gt; list_file
           echo $c &gt;&gt; list_file
           echo $d &gt;&gt; list_file
           echo $e &gt;&gt; list_file
           echo $f &gt;&gt; list_file
           echo $g &gt;&gt; list_file
           echo $h &gt;&gt; list_file
           echo $i &gt;&gt; list_file
           echo $j &gt;&gt; list_file
           cat list_file| xargs -i getx \{\}
           rm list_file
           echo "Porting List... Please Wait"

Any help is greatly appreciated..
:confused:

use an array intead...tested on HPUX using Korn Shell.

set -A LIST
index=0
RESPONSE='Y'

while [ "$RESPONSE" = 'Y' ]
do
  echo "Enter Data Please: \c"
  read DATA
  LIST[$index]=$DATA
  ((index +=1))
  PS3="Enter More Data?"
    select ANSWER in Yes No Exit
     do
        case "$ANSWER" in 
           Yes) break
                ;;
            No) RESPONSE='N'
                break
                ;;
          Exit) exit
                ;;
             *) echo "Invalid Response. Try Again" 
                ;;
         esac
     done
done

echo " ${LIST[@]} " >> output_file.dat

Google was correct in using a loop to request the data - you could use an empty string as being done entering data so you would not have to put "Y/N" for being finished ...

echo "Enter Data Please \c"
read DATA
if (DATA != "" ) then
# keep looping
else
exit or some time of goto

( not real code - just the logic needed)

I currently do not have a problem having the user respond after each entry, I am having trouble letting the user paste a whole list of items on the input screen. These items are to be written to a file to be used with another script. My issue is that the user will have to paste the list, then respond by hitting <ENTER> until they reach 10 items if there are less than 10 items in the list. I basically need some conditional statement that says if the input equals "X" or something, then go onto the next step of the script. However, I cannot seem to accomplish this with the "if' statements that I've attempted.

How about setting korn shell parameters until the user enters "X" or eot ("Ctrl-D")

while read a
do
  [[ $a = X ]] && break
  set -- $@ "$a"
done
echo $@ | xargs -i getx {}
echo "Porting List... Please Wait"