modifying a row


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting modifying a row
# 1  
Old 06-08-2010
modifying a row

I want to modify a file by deleting certain characters. The file looks like this:

Code:
>ctg86 org=S_bayanus] moltype=genomictg] ctgontig=ctg86]
RRRRRRRRRRRRRRRRRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYYYYFFFFFFFFFFFGGGGGGGGGHHHHH
>ctg86 org=S_bayanus] moltype=genomictg] ctgontig=ctg86]
HHIIIIIIIIIMMMMMMMMMMMRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTT

I want to modify the lines with the > so the output looks like this

Code:
>ctg86
RRRRRRRRRRRRRRRRRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYYYYFFFFFFFFFFFGGGGGGGGGHHHHH
>ctg86
HHIIIIIIIIIMMMMMMMMMMMRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTT

thanks
Phil
# 2  
Old 06-08-2010
Code:
awk ' { if ( $0~/>/  ) { print $1 } else {print } }' inputfile

# 3  
Old 06-08-2010
Quote:
Originally Posted by phil_heath
I want to modify a file by deleting certain characters. The file looks like this:

Code:
>ctg86 org=S_bayanus] moltype=genomictg] ctgontig=ctg86]
RRRRRRRRRRRRRRRRRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYYYYFFFFFFFFFFFGGGGGGGGGHHHHH
>ctg86 org=S_bayanus] moltype=genomictg] ctgontig=ctg86]
HHIIIIIIIIIMMMMMMMMMMMRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTT

I want to modify the lines with the > so the output looks like this

Code:
>ctg86
RRRRRRRRRRRRRRRRRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYYYYFFFFFFFFFFFGGGGGGGGGHHHHH
>ctg86
HHIIIIIIIIIMMMMMMMMMMMRRRRRRRRRRRRTTTTTTTTTTTTTTTTTTTTTTTT

thanks
Phil
Assuming that each line that you want to modify starts with the same string of ">ctg86" you can do something like this:

Code:
sed -e 's/\(>ctg86\).*/\1/' file

# 4  
Old 06-08-2010
Code:
awk '{print ($0~/>/)?$1:$0}' urfile

or
Code:
awk '/>/ {$0=$1}1' urfile

# 5  
Old 06-08-2010
Quote:
Originally Posted by malcolmpdx
Assuming that each line that you want to modify starts with the same string of ">ctg86" you can do something like this:

Code:
sed -e 's/\(>ctg86\).*/\1/' file

Actually, to be precise, you'd probably want to anchor that string at the beginning of a line:

Code:
sed -e 's/^\(>ctg86\).*/\1/' file

just to handle a situation where the same string occurred later in a line.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Keep only the closet match of timestamped row (include headers) from file1 to precede file2 row/s

This is a question that is related to one I had last August when I was trying to sort/merge two files by millsecond time column (in this case column 6). The script (below) that helped me last august by RudiC solved the puzzle of sorting/merging two files by time, except it gets lost when the... (0 Replies)
Discussion started by: aachave1
0 Replies

2. Shell Programming and Scripting

Splitting single row into multiple rows based on for every 10 digits of last field of the row

Hi ALL, We have requirement in a file, i have multiple rows. Example below: Input file rows 01,1,102319,0,0,70,26,U,1,331,000000113200000011920000001212 01,1,102319,0,1,80,20,U,1,241,00000059420000006021 I need my output file should be as mentioned below. Last field should split for... (4 Replies)
Discussion started by: kotra
4 Replies

3. UNIX for Beginners Questions & Answers

Keep only the closet match of timestamped row (include headers) from file1 to precede file2 row/s

My original files are like this below and I distinguish them from the AP_ID (file1 has 572 and file2 has 544). Also, the header on file1 has “G_” pre-pended. NOTE: these are only snippets of very large files and much of the data is not present here. Original File 1: ... (36 Replies)
Discussion started by: aachave1
36 Replies

4. Shell Programming and Scripting

Add Row from First Row (Split Row)

HI Guys, I have Below Input :- RepigA_hteis522 ReptCfiEtrBsCll_aofe MSL04_MSL2_A25_1A 0 9 MSL04_MSL2_A25_1B 0 9 MSL04_MSL2_A25_1C 0 9 RepigA ReptCfiEtrBsCll hteis522 aofe MSL04_MSL2_A25_1A 0 9 MSL04_MSL2_A25_1B 0 9 MSL04_MSL2_A25_1C 0 9 Split Data in two first row... (2 Replies)
Discussion started by: pareshkp
2 Replies

5. Emergency UNIX and Linux Support

[Solved] Mysql - Take data from row and copy it to another row

Sorry if I repost my question in this section, but I'm really in a hurry since I have to finish my work... :( Dear community, I have a table with two rows like: Row1 Row2 ======= ======= 7,3 text 1 1,3 text 2 1,2,3 blabla What i need to do is add/copy... (2 Replies)
Discussion started by: Lord Spectre
2 Replies

6. Shell Programming and Scripting

Subtracting each row from the first row in a single column file using awk

Hi Friends, I have a single column data like below. 1 2 3 4 5 I need the output like below. 0 1 2 3 4 where each row (including first row) subtracting from first row and the result should print below like the way shown in output file. Thanks Sid (11 Replies)
Discussion started by: ks_reddy
11 Replies

7. UNIX for Dummies Questions & Answers

Shell Script: Traverse Database Table Row by Row

Hello Everyone, My issue is that I want to traverse a database table row by row and do some action on the value retrieved in each row. I have gone through a lot of shell script questions/posts. I could find row by row traversal of a file but not a database table. Please help. Thanks &... (5 Replies)
Discussion started by: ahsan.asghar
5 Replies

8. UNIX for Dummies Questions & Answers

How to calculate the percentage/fraction of each value in a row against the maximum row value?

Hi, For each row in a file, i would like to identify the maximum value and calculate the percentage/fraction of the max for other values in the row. Then, I would like to print a copy of the file where values above a threshold are replaced with "1" and other values are left as "0". In the... (2 Replies)
Discussion started by: auburn
2 Replies

9. Shell Programming and Scripting

Changing the column for a row in a text file and adding another row

Hi, I want to write a shell script which increments a particular column in a row from a text file and then adds another row below the current row with the incremented value . For Eg . if the input file has a row : abc xyz lmn 89 lm nk o p I would like the script to create something like... (9 Replies)
Discussion started by: aYankeeFan
9 Replies
Login or Register to Ask a Question