How to add a value to a file name

How do you add a value to a existing file name.  Have a FTP process that receives back a trackingID during the process and when the file is archived needs to be added to the file name before the extension.

For example,

outbound_33333_20130515.xml   need to add a value,

outbound_33333_20130515_H23344232.xml

The added value is stored in a string, called trackingID.

Thank you for the help
Brian
bjeAsked:
Who is Participating?
 
ozoConnect With a Mentor Commented:
#!/bin/bash
file=outbound_20130517.xml
trackingID=H2334423
echo ${file/./_$trackingID.}
0
 
ozoCommented:
#!/bin/bash
trackingID=outbound_33333_20130515.xml
echo ${trackingID/./_H23344232.}
0
 
bjeAuthor Commented:
My apology ,  I am sending files via FTP and trying to change the file name so the tracking id is in the file name before the .xml when the file is move to a archive directory.

the command i am using is

mv $file ${archive_dir}/$file_${TrackingID}

Which gives me, outbound_20130517.xml_H23344232

would like to have

outbound_20130517_H23344232.xml

Thanks,
Brian
0
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

 
bjeAuthor Commented:
Thank you.  this worked.


I am working on another script which uses a "cntr" to keep track of the files and moves them to a archive.

I used this command and not sure what I have wrong with my syntax.

current:
mv ${file_sent[cntr]} ${archive_dir}/${file_sent[cntr]}.${TrackingID}

tried:
mv ${file_sent[cntr]} ${archive_dir}/${file_sent[cntr]}/./_${TrackingID}.}

Thank you for the help
0
 
bjeAuthor Commented:
Hello,

The solution works.  I have a question on how you would insert a field when the file has a period inbetween the values.

example

apa.out.name.txt

would like to but a date/time stamp after name

apa.out.name.20130913140010.txt

my file name comes out app.20130913140010.out.name.txt

Thanks,
BJE
0
 
ozoCommented:
file=apa.out.name.txt
trackingID=20130913140010
echo ${file%.*}.$trackingID.${file##*.}
0
 
bjeAuthor Commented:
Thanks
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.