need help with script

Hi
I need to extract file name from the whole path .
which is like :

/data/ds/dpr_bir2core17_dev/landing/region/InputSample

this is the whole path and i need to extract file name InputSample from the path. I am passing this path as a 2nd parameter while running the script.

Can anubody help me with this.

You can use the basename command.

Thnx Dangral, I appreciate ur help

Hi Dangral,
I used basename command as following, but in this way script is opening this file and fetching some columns from the file and showing error.
InputFileName=basename $1

and error is

/data/ds/dpr_bir2core17_dev/landing/region/InputSample1: INSERT,: not found.

where INSERT is in the first column of InputSample1 file.

Can you help me with this please

Hi,
it would help if You presented more of Your code, for example
InputFileName=basename $1
is an error in itself as I see it.
Maybe $1 contains the value INSERT, ?

/Lakris

Hi Lakris,
Thanks for reply..
here is code i'm using to extract filename:

echo $1

InputFileName=basename $1
echo $InputFileName

in here when i echo $1 , it is showing file name with path:

/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt

but echo $InputFileName is showing all the following errors:

/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt: INSERT,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[2]: INSERT,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[3]: INSERT,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[4]: INSERT,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[5]: INSERT,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[6]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[7]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[8]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[9]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[10]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[11]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[12]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[13]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[14]: UPDATE,: not found.
/data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt[15]: UPDATE,: not found.

where INSERT and UPDATE are in the first column of InputSample1.txt.

so, I don't know what is the problem with my code..

Yes, but the statement
InputFileName=basename $1
doesn't set InputFileName to /data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt
it sets it to "basename" and then tries to "run" $1, that is, the file /data/ds/dpr_bir2core17_dev/landing/region/InputSample1.txt.

What You need is
InputFileName=$(basename $1)
to set InputFileName to InputSample1.txt, ie the result of the command basename $1.

/Lakris

Hi Lakris,
Thanks you so much. It's working fine now...:slight_smile:

Great,
Keep on scripting !