Parameterizing to dynamically generate the extract file from Oracle table using Shell Script

I have below 2 requirements for parameterize the generate the extract file from Oracle table using Shell Script. Could you please help me by
modifying the script and show me how to execute it.
First Requirement:
I have a requirement where I need to parameterize to generate one extract file from multiple Oracle tables through the UNIX shell script.
Here is the script which I have written to generate one tab delimited file which will fetch all the data from EMPLOYEE table.
I need to parameterize the TABLE_NAME,OWNER_NAME,USERNAME,PASSWORD and HOST to generate from 12 more tables.
So, I would like to have only one SQL to dyngenerate the extract for 12 tables by passing these parameters values when executing the scripts.
Could you please give me show me how we can modify the below script and how to pass the parameter during the script execution.

Second Requirement:
To generate the file incrementally based on a column for example, ETL_UPDATE_TS. can you please show me this also.

Sample Scripts
    #!/usr/bin/ksh
    TD=/mz/mz01/TgtFiles
    MD=/mz/mz01/Scripts
    #CAQH_Server=sftp.org
    #UN=user
    #PWD=password
    #RD=Incoming
    #RD=/home/

    cd $TD

    FILE="EMPLOYEE.TXT"

    sqlplus -s scott/tiger@db  <<EOF

    SET PAGES 999
    SET COLSEP "    "
    SET LINES 999
    SET FEEDBACK OFF

    SPOOL $FILE

    SELECT * FROM EMP;

    SPOOL OFF
    EXIT
    EOF