07-07-2009
String replacement using sed
I need to search and replace a particular string in a file. Only the exact match of the string should be replaced.
eg: File contents : abc abcd abcdef
--> Replace only 'abc' with 'xyz', but it should not replace abcd with xyzd.
So the o/p should be: xyz abcd abcdef.
How can this be done? I tried sed 's/\<abc\>/xyz/g' , but it dint work.
Any help would be appreciated.
Thanks in advance!
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi guys, I hope you can help me with my problem.
I have a text file that contains lines like this:
78 ANGELO -809.05
79 ANGELO2 -5,000.06
I need to find all occurences of amounts that are negative and replace them with x's
78 ANGELO xxxxxxx
79... (4 Replies)
Discussion started by: amangeles
4 Replies
2. Shell Programming and Scripting
Hi,
Let me explain the situation.
There are many files in a directory and its sub-directories that conatin the string pattern "pa". I want to replace all such instances with the pattern "pranavagarwal"
doing a
grep "pa" `ls`
does give me all the instances of the occurence of that... (3 Replies)
Discussion started by: pranavagarwal
3 Replies
3. Shell Programming and Scripting
sed -i 's:"ps -ef | grep $(cat $PID_FILE) | grep -v grep":"ps -C java -o pid,cmd | grep ${SERVER_NAME} | cut -d' ' -f1 | grep -v grep":g' scriptName
That's what I'm attempting to do. I'm attempting to replace this:
ps -ef | grep $(cat $PID_FILE) | grep -v grep
with this:
ps -C java -o... (5 Replies)
Discussion started by: cbo0485
5 Replies
4. Shell Programming and Scripting
Hi,
What should be the syntax to match and replace an exact string using sed? And not replacing any string that contain the value?
Eg.
testtest
etstetst
testetst
testtttt
etsttest
testtesttest
testtest
I only want to replace the line with exact string "testtest" with "123456"
... (2 Replies)
Discussion started by: srage
2 Replies
5. UNIX for Dummies Questions & Answers
Hey everybody. I've got a simple problem but am unsure how to resolve it. I am using a script to edit multiple files at once. Inside the script I am using an sed command to make the changes. My problem is that I can only get it to work for stings that contain a word or words. How can I modify it to... (1 Reply)
Discussion started by: iwatk003
1 Replies
6. Shell Programming and Scripting
Hi,
I need to use the regex in the replacement string in SED command.
something like
sed -e ' s/\(^\{5\}\).\{150\}\(.*\)$/\10\{30\}1\{30\}A\{60\}B\{30\}\2/' abc
which means for all the lines in file abc that starts with 5 characters, I need to replace character 6-151... (6 Replies)
Discussion started by: snowline84
6 Replies
7. Shell Programming and Scripting
Hi All,
I am trying to replace the variable in the file after the particular match string. It is being replaced if i hardcode the value and with use of "&" with sed.
sed -e "s/URL./& http:\\localhost:7223/g"
But when am trying to pass the variable it is failing. I tried multiple... (9 Replies)
Discussion started by: sharsour
9 Replies
8. Shell Programming and Scripting
Dear Unix Forum Group Members,
Please do let me know how I can replace the double pipe with single pipe recursively on single record.
Sample Input Data:
DN set|Call prefix||| Called number address nature
0||| *789|||||||ALL number types
0||| 00||||||||ALL number types
10||... (5 Replies)
Discussion started by: srinu.kadem
5 Replies
9. Shell Programming and Scripting
I want to replace a string by contents of file.
I am trying the following sed command:
cat sample | sed "s^<enter description here>^`cat details`^"
But it is not working.
a=`cat details` and using $a will not help since it will affect the whitespaces.
What am I missing in the above sed... (5 Replies)
Discussion started by: anand_bh
5 Replies
10. Shell Programming and Scripting
Hello,
Just surfed on the web for probable answers but could not get them working.
I wish to replace the string containing spaces by another phrase but below answers did not work.
My string is:
PAIN & GAIN
I wish to convert it to:
P&G
I just need it working with sed with function -i
... (6 Replies)
Discussion started by: baris35
6 Replies
SUBSTR(3) 1 SUBSTR(3)
substr - Return part of a string
SYNOPSIS
string substr (string $string, int $start, [int $length])
DESCRIPTION
Returns the portion of $string specified by the $start and $length parameters.
PARAMETERS
o $string
- The input string. Must be one character or longer.
o $start
- If $start is non-negative, the returned string will start at the $start'th position in $string, counting from zero. For
instance, in the string ' abcdef', the character at position 0 is ' a', the character at position 2 is ' c', and so forth. If
$start is negative, the returned string will start at the $start'th character from the end of $string. If $string is less than or
equal to $start characters long, FALSE will be returned.
Example #1
Using a negative $start
<?php
$rest = substr("abcdef", -1); // returns "f"
$rest = substr("abcdef", -2); // returns "ef"
$rest = substr("abcdef", -3, 1); // returns "d"
?>
o $length
- If $length is given and is positive, the string returned will contain at most $length characters beginning from $start (depend-
ing on the length of $string). If $length is given and is negative, then that many characters will be omitted from the end of
$string (after the start position has been calculated when a $start is negative). If $start denotes the position of this trunca-
tion or beyond, false will be returned. If $length is given and is 0, FALSE or NULL, an empty string will be returned. If
$length is omitted, the substring starting from $start until the end of the string will be returned.
Example #2
Using a negative $length
<?php
$rest = substr("abcdef", 0, -1); // returns "abcde"
$rest = substr("abcdef", 2, -1); // returns "cde"
$rest = substr("abcdef", 4, -4); // returns false
$rest = substr("abcdef", -3, -1); // returns "de"
?>
RETURN VALUES
Returns the extracted part of $string; or FALSE on failure, or an empty string.
CHANGELOG
+--------------+---------------------------------------------------+
| Version | |
| | |
| | Description |
| | |
+--------------+---------------------------------------------------+
|5.2.2 - 5.2.6 | |
| | |
| | If the $start parameter indicates the position |
| | of a negative truncation or beyond, false is |
| | returned. Other versions get the string from |
| | start. |
| | |
+--------------+---------------------------------------------------+
EXAMPLES
Example #3
Basic substr(3) usage
<?php
echo substr('abcdef', 1); // bcdef
echo substr('abcdef', 1, 3); // bcd
echo substr('abcdef', 0, 4); // abcd
echo substr('abcdef', 0, 8); // abcdef
echo substr('abcdef', -1, 1); // f
// Accessing single characters in a string
// can also be achieved using "square brackets"
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
?>
Example #4
substr(3) casting behaviour
<?php
class apple {
public function __toString() {
return "green";
}
}
echo "1) ".var_export(substr("pear", 0, 2), true).PHP_EOL;
echo "2) ".var_export(substr(54321, 0, 2), true).PHP_EOL;
echo "3) ".var_export(substr(new apple(), 0, 2), true).PHP_EOL;
echo "4) ".var_export(substr(true, 0, 1), true).PHP_EOL;
echo "5) ".var_export(substr(false, 0, 1), true).PHP_EOL;
echo "6) ".var_export(substr("", 0, 1), true).PHP_EOL;
echo "7) ".var_export(substr(1.2e3, 0, 4), true).PHP_EOL;
?>
The above example will output:
1) 'pe'
2) '54'
3) 'gr'
4) '1'
5) false
6) false
7) '1200'
ERRORS
/EXCEPTIONS
Returns FALSE on error.
Example #5
<?php
var_dump(substr('a', 1)); // bool(false)
?>
SEE ALSO
strrchr(3), substr_replace(3), preg_match(3), trim(3), mb_substr(3), wordwrap(3), String access and modification by character.
PHP Documentation Group SUBSTR(3)