I have a file as below, which is basically the result set obtained from a sql query on an Oracle database.
ID PROG_NAME USER_PROG_NAME
-------- --------------- ----------------------------------------
33045 INCOIN Import Items
42690 POXPOPDOI Import Standard Purchase Orders
I want to assign the results to variables. Something like:
cat filename | tail +4 | while read line ## tail +4 because the first 3 lines are the heading!
do
id=$(echo ${line} | awk '{print $1}')
prog_name=$(echo ${line} | awk '{print $2}')
user_prog_name=$(echo ${line} | awk '{print $3}')
However, I am unable to assign the 3rd column to variable user_prog_name since it has spaces.
Replace
your line :user_prog_name=$(echo ${line} | awk '{print $3}')
by :user_prog_name=$(echo ${line} | awk '{print $3 $4 $5 $6}')
(or)
user_prog_name=$(echo ${line} | awk '{print $3 " " $4 " " $5 " " $6}') to provide single space " " between $3,$4,$5 and $6 when the values are store in variable.
I am post this script after check.
It is running fine.
concept:
here we join the remaining last n coloumn and save it in a variable.
byebye..