Adding the data before file extension


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Adding the data before file extension
# 1  
Old 05-08-2011
Adding the data before file extension

HI ,

I have a file with multiple lines like below, I need to check on column starting with #prototype if it has the .Number.txt extension do nothing else add 1.txt extension.

Code:
Source data
Jdbc_app_data :- sample data
#prototype= sample data from test.1.txt
application_id=122135
#prototype= sample data from test.2.txt
target_id=354
#prototype= sample data from test.txt
system_id=222
#prototype= sample data from test.txt


Code:
Target Data

Jdbc_app_data :- sample data
#prototype= sample data from test.1.txt
application_id=122135
#prototype= sample data from test.2.txt
target_id=354
#prototype= sample data from test.1.txt
system_id=222
#prototype= sample data from test.1.txt

Regards,
Deepti
# 2  
Old 05-08-2011
Try this

Code:
awk '/^#pro/{t=match($5,/[0-9]/,_1);if(t==0){split($5,_2,"."); $5=_2[1]".1."_2[2]}}{print}' file

regards,
Ahamed
# 3  
Old 05-08-2011
Code:
sed '/^#prot/s/t\.t/t.1.t/' infile

# 4  
Old 05-08-2011
@ctsgnb: your code will not work if the file doesn't have 't' as last char before extension:
Code:
$ cat input
Source data
Jdbc_app_data :- sample data
#prototype= sample data from test.1.txt
application_id=122135
#prototype= sample data from test.2.txt
target_id=354
#prototype= sample data from testhh.txt
system_id=222
#prototype= sample data from testff.txt

$ sed '/^#prot/s/t\.t/t.1.t/' input
Source data
Jdbc_app_data :- sample data
#prototype= sample data from test.1.txt
application_id=122135
#prototype= sample data from test.2.txt
target_id=354
#prototype= sample data from testhh.txt
system_id=222
#prototype= sample data from testff.txt

More general:
Code:
sed '/^#prototype/ s/\([^\d]\).txt/\1\.1\.txt/' input

will insert '.1' for a filename with a character other than digit ([^\d]) before '.txt'
# 5  
Old 05-08-2011
Code:
awk '/#prototype/&& $(NF-1)!~/[0-9]/ {$NF="1." $NF}1' FS=. OFS=. infile

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Adding a comment in a file next to data

Dear Gurus, I have a file which comes every day with set of data, as a part of processing i want to add a comment at the start of every line. e.g of file <PCL> 2E;"HCA";"COP Car A";"ODBS_CFG" 7C;"DD";"Doors Car D";"ODBS_CFG" 3D;"XA";"Auxiliary Car A";"ODBS_CFG" 3E;"XB";"Auxiliary... (12 Replies)
Discussion started by: guddu_12
12 Replies

2. Red Hat

Adding a data file

I need to add a data file, but my user account doesn't have privileges. I have connected to the oracle as sqlplus / as sysdba and it is telling me I'm connect to an idle instance. How can I connect to my database and create a data file if I don't know the passwords of any of the account that have... (1 Reply)
Discussion started by: FaSho76
1 Replies

3. Shell Programming and Scripting

Help in adding a data after a particular line of data in a file.

Hi.. I'm into a bump after trying to solve this prob.. i've a file with contents like below. <blankline> 'pgmId' : 'UNIX', 'pgmData' : 'textfile', 'author' : 'admin', ....... Now i'm trying to insert a new data after pgmId. so the final output will be... (7 Replies)
Discussion started by: arjun_arippa
7 Replies

4. Shell Programming and Scripting

Adding number before file extension

Hi , I have a file which has a line starts with $segment_name and has the below data source data $Segment_Name = 123.ABC.123.01.txt $Segment_Name = 123.ABC.ABC.txt $Segment_Name = 123.ABC.12A3.txtMy target data should be $Segment_Name = 123.ABC.123.01.txt $Segment_Name =... (2 Replies)
Discussion started by: shruthidwh
2 Replies

5. Shell Programming and Scripting

Adding data in a file on same line

Hi, I have one file a.txt ,the contents of the file is A B C D E F and I have another file b.txt, the contents of the file is 1 2 3 4 5 6 now when I am using this command cat a.txt b.txt > c.txtI am getting the output as A B C D E F 1 2 3 4 5 6 but i need the output... (2 Replies)
Discussion started by: prarat
2 Replies

6. Shell Programming and Scripting

Adding lines to files based on file extension

I have posted this before but did not get many replies, so here it goes again. I have several files name like this If the file extension is 1a, I woould like to add at the beggining of the file the following sequence If the file extension is 1b, thn the entry that should be added is the next... (2 Replies)
Discussion started by: Xterra
2 Replies

7. Shell Programming and Scripting

How to split a file with adding sequence number and extension.

I have a file name -HRCFTSIN05PLA1602100430444444 my requirement is to split the file in 10000 count each file and to add sequence number.rch at the end of each file. output should be in this format HRCFTSIN05PLA160210043044444401.rch HRCFTSIN05PLA160210043044444402.rch... (4 Replies)
Discussion started by: abhigrkist
4 Replies

8. Shell Programming and Scripting

adding the data at a specified location in a file....

Hi all, I m new to shell programming..Can anyone please guide me how to insert data at a specified location in the file.. I have a configuration file..I want to add data to it through script..I am able to do it...I get that data written at end of my configuration file..I want data to be placed at... (3 Replies)
Discussion started by: divya_flora
3 Replies

9. Shell Programming and Scripting

Need Help for Adding Three new columns in existing file from fatching data from file

not required this time (36 Replies)
Discussion started by: Sandeep_Malik
36 Replies

10. UNIX for Dummies Questions & Answers

Adding an extension to a group of filenames

Hi - I'm stuck. I have a group of text files created using the split command. My files have the names "projectaa", "projectab", "projectac", etc. What I want to do is add the extension ".txt" to each file. I think I've got part of a sed command together, but I'm stuck on my regex - I keep getting... (9 Replies)
Discussion started by: pepintheshort
9 Replies
Login or Register to Ask a Question