Visit Our UNIX and Linux User Community


In Sed how can I replace starting from the 7th character to the 15th character.


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting In Sed how can I replace starting from the 7th character to the 15th character.
# 1  
Old 09-22-2010
In Sed how can I replace starting from the 7th character to the 15th character.

Hi All,

Was wondering how I can do the following....

I have a String as follows

"ACCTRL000005022RRWDKKEEDKDD...."
This string can be in a file called tail.out or in a Variable called $VAR2

Now I have another variable called $VAR1="000004785" (9 bytes long), I need the content of $VAR1 in the string $VAR2

Example:
VAR1=000004785
|
|
VAR2= "ACCTRL000005022RRWDKKEEDKDD...."

So it should look like...
VAR2= "ACCTRL000004785RRWDKKEEDKDD...."

I know this can be done by sed, but I need to know how to replace from the 7th character till the 15th character.

Any help would be appreaciated.

Thanks,
# 2  
Old 09-22-2010
Some ways:
Code:
VAR1="000004785" 
echo "$VAR2" | sed "s/\([^0-9]*\)[0-9]*\(.*\)/\1$VAR1\2/"

or:
Code:
VAR1="000004785" 
echo "$VAR2" | sed "s/\(......\).........\(.*\)/\1$VAR1\2/"

This User Gave Thanks to Franklin52 For This Post:
# 3  
Old 09-22-2010
One more (minor variation of Franklin52's second option):
Code:
sed "s/\(.\{6\}\).\{9\}/\1$VAR1/"

Regards,
Alister
This User Gave Thanks to alister For This Post:
# 4  
Old 09-22-2010
bash 4
Code:
# VAR1=000004785
# VAR2="ACCTRL000005022RRWDKKEEDKDD...."
# VAR2=${VAR2:0:6}${VAR1}${VAR2:15}
# echo $VAR2
ACCTRL000004785RRWDKKEEDKDD....

This User Gave Thanks to danmero For This Post:
# 5  
Old 09-22-2010
Thanks all... it worked as expected. Smilie
# 6  
Old 09-22-2010
by awk substr function.

Code:
VAR1=000004785
VAR2="ACCTRL000005022RRWDKKEEDKDD...." 

VAR3=$( echo $VAR2|awk -v s=$VAR1 '{sub(substr($0,7,9),s)}1' )


Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk or other way to find out number of occurrence of 7th character

Hi all, I am looking for to filter out based on 7th character and list the number of occurrence based on the 7th character if p , d , o or m 1. if 7th character is p , Output should be: p_hosts = N 2. if 7th character is d , Output should be: d_hosts = N 3. if 7th character is o , Output... (10 Replies)
Discussion started by: rveri
10 Replies

2. Shell Programming and Scripting

sed searches a character string for a specified delimiter character, and returns a leading or traili

Hi, Anyone can help using SED searches a character string for a specified delimiter character, and returns a leading or trailing space/blank. Text file : "1"|"ExternalClassDEA519CF5"|"Art1" "2"|"ExternalClass563EA516C"|"Art3" "3"|"ExternalClass305ED16B8"|"Art9" ... ... ... (2 Replies)
Discussion started by: fspalero
2 Replies

3. UNIX for Advanced & Expert Users

Replace certain character at specific place with related character

hello i have file with 100k records and each one has certain value that starts at 28th column and certain value that starts at 88th column e.g. 1st file <25>1234567 ..... <88> 8573785485 i have aditional file with values which are related to value that starts at 88th column of the... (1 Reply)
Discussion started by: dell1520
1 Replies

4. Shell Programming and Scripting

Find character and Replace character for given position

Hi, i want find the character '-' in a file from position 284-298, if it occurs i need to replace it with 'O ' for the position in the file. How to do that using SED command. thanks in advance, Sara (9 Replies)
Discussion started by: Sara183
9 Replies

5. Shell Programming and Scripting

Replace multiple occurances of same character with a single character.

Hi all, Greetings, I have the following scenario, The contents of main file are like : Unix|||||forum|||||||||||||||is||||||the||best so||||||be|||||on||||||||||||||||||||||||||||||||||||||||||||it And i need the output in the following form: Unix=forum=is=the=best so=be=on=it ... (3 Replies)
Discussion started by: dipanchandra
3 Replies

6. Shell Programming and Scripting

sed help,to replace the last character

cat input.txt agsbdafgd ertebrtreter ahrbrwerg The last character of a line that does not start with a would be changed to Z. Final output: agsbdafgd ertebrtreteZ ahrbrwerg Can anyone post the sed command to do that? (2 Replies)
Discussion started by: cola
2 Replies

7. Shell Programming and Scripting

Get rid of the 7th character of each line if this is a space

I have a text file like this ... B 16 1.340E+05 A 18 3.083E+02 Wu123 1.365E+02 ... I would like to get rid of the 7th character of each line if this is a space character. Thank you, Sarah (5 Replies)
Discussion started by: f_o_555
5 Replies

8. Shell Programming and Scripting

Sed Replace a repeating character

I have a text file and every line ends in |^ |^^ |^^^ |^^^^ I need to use sed to make all lines end it |^ regardless of the amount of carrots. The code i was using is: cat FILE | sed 's/\^\^\^/\^/g' But then they threw that curveball at me. Also is there a way to... (2 Replies)
Discussion started by: insania
2 Replies

9. Shell Programming and Scripting

read in a file character by character - replace any unknown ASCII characters with spa

Can someone help me to write a script / command to read in a file, character by character, replace any unknown ASCII characters with space. then write out the file to a new filename/ Thanks! (1 Reply)
Discussion started by: raghav525
1 Replies

10. Shell Programming and Scripting

How To Make Decimal Point Fall On The 15th Character On The Screen

If i have a variable which is a decimal number, i.e 34.05 How can you make decimal point fall on the 15th character on the screen? Or any other that you can specify? Can you do it using sed or awk? (3 Replies)
Discussion started by: Vozx
3 Replies

Featured Tech Videos