09-15-2003
You have more funky characters in that file than the two that you mentioned. You may want to change them as well.
I will show you how I would approach something like this. I am using ksh as my interactive shell. That is important because my solution depends on the echo statement.
Let's say that I want to change all of my Ä characters to be a hyphen character. It is possible that a simple "sed s/Ä/-/g" would work, But I don't like to use non-ascii characters.
First I need to know the octal value for Ä and I will use od -c for that.
od -c < funky.txt
OK, it is 304.
Now I need an echo statement to create a single instance of that character. I will test the echo statement to be sure it's working:
echo \\0304\\c ; sleep 5
The sleep 5 gives me some time to view the character before my prompt overwrites it.
Now I can construct the sed statement:
sed "s/$(echo \\0304\\c)/-/g" < funky.txt
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
i have this script that searches for a pattern.
However it fails if the pattern includes some
special characters. So far, it fails with the
following strings:
1. -Cr
2. $Mj
3. H'412
would a sed or awk be more effective?
i don't want the users to put the (\)
during the search (they... (5 Replies)
Discussion started by: apalex
5 Replies
2. Shell Programming and Scripting
Hi,
I am reading a file (GC_JAR.log) which has entries like:
511725.629, 0.1122672 secs]
525268.975, 0.1240036 secs]
527181.835, 0.2068215 secs]
527914.287, 0.2884801 secs]
528457.134, 0.2548725 secs]
I want to replace all the entries of "secs]" with just "secs"
Thus, the output... (4 Replies)
Discussion started by: itzz.me
4 Replies
3. Shell Programming and Scripting
I started with this:
counter1=1
cp file.txt file_${counter1}.tmp
while read name1
do
echo $name1
counter2=`expr $counter1 + 1`
sed /'${name1}'/d file_${counter1}.txt > file_${counter2}.txt
counter1=`expr $counter1 + 1`
done < source.txtsource.txt contains the... (1 Reply)
Discussion started by: lakanino
1 Replies
4. Shell Programming and Scripting
Hi everyone
I have file1 contains:
'7832'
' 8765
6543
I want a sed command that will format as:
'7832' , '8765' , '6543'
I tried
sed -e s/\'//g -e 's/^*//;s/*$//' file1 > file2
sed -e :a -e '$!N; s/\n/ /; ta' file2
which gives: 7832 8765 6543
I need some help to continue with... (5 Replies)
Discussion started by: nimo
5 Replies
5. Shell Programming and Scripting
Hello All
Seeking the right one SED command.
My attempt is:
From orginal.txt by SED to target.txt
sed -i "/('outbound-callerid/a\$ext->add($context, $exten, '', new ext_SipAddHeader('P-Preferred-Identity', '<sip:${CALLERID(nummer)}@carrier.com>'));" orginal.txtWhat am make wrong?:wall:
... (5 Replies)
Discussion started by: mdbinder
5 Replies
6. Shell Programming and Scripting
Need help in escaping special characters in sed command.
Here is the the string which i am trying to find a replace with
From :- REQUEST_TYPE=PIXEL&MSG_ID={//MESSAGE_ID}
To :- REQUEST_TYPE=PIXEL&MSG_ID= X_EDELIVERY_MESSAGE_ID & BATCH_ID= X_EDELIVERY_BATCH_ID
Here is the sed command i am... (2 Replies)
Discussion started by: aakishore
2 Replies
7. Shell Programming and Scripting
Hi I'm trying to replace string1 by string2 in file homepage.htm as follows but is not working. Please Help:
sedsed -i "s@'://your server name:port/test/owa'@'://11.22.33.44:5555/pls/SAMPLE'@g" homepage.htm
Where,
String1 ://your server name:port/test/owa
String2... (3 Replies)
Discussion started by: koazter
3 Replies
8. Shell Programming and Scripting
Hi,
I have a file with this line, it's always in the first line:
I want to remove these special characters: ´╗┐
file1
´╗┐\\bar\c$\test2\;3.348.118 Bytes;160 ;3
\\bar\c$\test\;35 Bytes;2 ;1
I want the same file to be only
\\bar\c$\test2\;3.348.118 Bytes;160 ;3
\\bar\c$\test\;35... (4 Replies)
Discussion started by: nakaedu
4 Replies
9. Shell Programming and Scripting
I am dusting off the sed cobwebs and had a basic question:
I have a file that contains:
$firewall = "on";
$cache = "on";
$dataset{'mary had a little lamb'} = "on";
and want to only change the contents of what is between the single quotes:
$dataset{'big bad wolf'} = "on";
I... (3 Replies)
Discussion started by: metallica1973
3 Replies
10. Shell Programming and Scripting
I have the foolowing data file:
File1
<p name="A">5004</p>
<p name="B">5004</p>
<p name="C">5004</p>
<p name="A">15004</p>
<p name="B">15004</p>
<p name="C">15004</p>
In a while loop using sed (100 of line need to be replace), I need the output to File3:... (2 Replies)
Discussion started by: bobo
2 Replies
ECHO(3) 1 ECHO(3)
echo - Output one or more strings
SYNOPSIS
void echo (string $arg1, [string $...])
DESCRIPTION
Outputs all parameters.
echo is not actually a function (it is a language construct), so you are not required to use parentheses with it. echo (unlike some other
language constructs) does not behave like a function, so it cannot always be used in the context of a function. Additionally, if you want
to pass more than one parameter to echo, the parameters must not be enclosed within parentheses.
echo also has a shortcut syntax, where you can immediately follow the opening tag with an equals sign. Prior to PHP 5.4.0, this short syn-
tax only works with the short_open_tag configuration setting enabled.
I have <?=$foo?> foo.
PARAMETERS
o $arg1
- The parameter to output.
o $...
-
RETURN VALUES
No value is returned.
EXAMPLES
Example #1
echo examples
<?php
echo "Hello World";
echo "This spans
multiple lines. The newlines will be
output as well";
echo "This spans
multiple lines. The newlines will be
output as well.";
echo "Escaping characters is done "Like this".";
// You can use variables inside of an echo statement
$foo = "foobar";
$bar = "barbaz";
echo "foo is $foo"; // foo is foobar
// You can also use arrays
$baz = array("value" => "foo");
echo "this is {$baz['value']} !"; // this is foo !
// Using single quotes will print the variable name, not the value
echo 'foo is $foo'; // foo is $foo
// If you are not using any other characters, you can just echo variables
echo $foo; // foobar
echo $foo,$bar; // foobarbarbaz
// Some people prefer passing multiple parameters to echo over concatenation.
echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters.', chr(10);
echo 'This ' . 'string ' . 'was ' . 'made ' . 'with concatenation.' . "
";
echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;
// Because echo does not behave like a function, the following code is invalid.
($some_var) ? echo 'true' : echo 'false';
// However, the following examples will work:
($some_var) ? print 'true' : print 'false'; // print is also a construct, but
// it behaves like a function, so
// it may be used in this context.
echo $some_var ? 'true': 'false'; // changing the statement around
?>
NOTES
Note
Because this is a language construct and not a function, it cannot be called using variable functions.
SEE ALSO
print(3), printf(3), flush(3), Heredoc syntax.
PHP Documentation Group ECHO(3)