Linux Script to copy and rename files through SQL statement

Hi,

I require help to complete below requirement through Linux Script.

I have a SQL query which shows two columns as output. One is Report Name and other is report path. Query return multiple rows. below is the output.

Report Name 
Cotton Stock Report (Net Weight)- Customized 
Output Path
/opt/ora/oracle/inst/apps/PROD_prodapps/logs/appl/c onc/out/o16728954.out 
Report Name
Daily Yarn Clearance Summary Report (NCML / ESML) -Customized 
Output Path
/opt/ora/oracle/inst/apps/PROD_prodapps/logs/appl/c onc/out/o16728991.out 
Report Name
Freight & Weight Of Arrival - Customized 
Output Path
/opt/ora/oracle/inst/apps/PROD_prodapps/logs/appl/c onc/out/o16729009.out 

Now requirement is to copy the file from output path to /opt/reports
further rename the report name which is in output path after out/ with .out extension
with the name in Report name column.

So script will copy the files and rename them in a loop, so that all the records available in the select statement will be copy and renamed.
below is the SQL Query.

Select 
pt.user_concurrent_program_name , 
OUTFILE_NAME 
FROm 
apps.fnd_concurrent_programs_tl pt, 
apps.fnd_concurrent_requests f 
where 
pt.concurrent_program_id = f.concurrent_program_id 
and pt.application_id = f.program_application_id 
and f.RESPONSIBILITY_ID = 52431 
and trunc(f.request_date) = trunc(sysdate)

Welcome usman_oracle,

I have a few to questions pose in response first:-

  • Is this homework/assignment? There are specific forums for these.
  • What have you tried in your script so far?
  • What output/errors do you get?
  • What OS and version are you using?
  • What are your preferred tools? (C, shell, perl, awk, etc.)
  • What logical process have you considered? (to help steer us to follow what you are trying to achieve)
  • How do you get the report names? I don't see it in your SQL.
  • Can I presume that the headings in bold do not actually appear in your output? If they do, i don't see where your SQL generates them.

Most importantly, What have you tried so far?

There are probably many ways to achieve most tasks, so giving us an idea of your style and thoughts will help us guide you to an answer most suitable to you so you can adjust it to suit your needs in future.

We're all here to learn and getting the relevant information will help us all.

Hi,
for your queries blow is the response.
Is this homework/assignment? There are specific forums for these.
This is assignment
What have you tried in your script so far?
Well, i am new to linux, if have tried to copy cp and rename files.
What output/errors do you get?
currently unable to initialize output of SQL Query in script
What OS and version are you using?
Linux Red Hat 5.8
What are your preferred tools? (C, shell, perl, awk, etc.)
shell
What logical process have you considered? (to help steer us to follow what you are trying to achieve)

How do you get the report names? I don't see it in your SQL.
in SQL (pt.user_concurrent_program_name ) is the report name. system generate the report and saves its name and output path in a table
Can I presume that the headings in bold do not actually appear in your output? If they do, i don't see where your SQL generates them.
actually bold heading are the column name of the table

Regards,

---------- Post updated at 06:24 AM ---------- Previous update was at 06:13 AM ----------

Select 
pt.user_concurrent_program_name report_name , 
OUTFILE_NAME output_path
FROm 
apps.fnd_concurrent_programs_tl pt, 
apps.fnd_concurrent_requests f 
where 
pt.concurrent_program_id = f.concurrent_program_id 
and pt.application_id = f.program_application_id 
and f.RESPONSIBILITY_ID = 52431 
and trunc(f.request_date) = trunc(sysdate)

Do not post classroom or homework problems in the main forums. Homework and coursework questions can only be posted in this forum under special homework rules.

Please review the rules, which you agreed to when you registered, if you have not already done so.

More-than-likely, posting homework in the main forums has resulting in a forum infraction. If you did not post homework, please explain the company you work for and the nature of the problem you are working on.

If you did post homework in the main forums, please review the guidelines for posting homework and repost.

Thank You.

The UNIX and Linux Forums.