Bryan
Bryan

Reputation: 67

Uncomment line using sed

How can I uncomment a line // Configure::write('debug', 2); using sed? I've tried

sed 's+// Configure::write('debug', 2);+Configure::write('debug', 2);+g' -I file

Upvotes: 1

Views: 367

Answers (1)

Lev M.
Lev M.

Reputation: 6269

The problem is you are using single quotes both to denote the argument and you have them inside the string you are trying to match, so the shell just strips them, and the match fails.

Use double quotes around the argument:

sed "s+// Configure::write('debug', 2);+Configure::write('debug', 2);+g" -i file

Note that depending on the version of sed you are using, you may need to escape the parentheses so they are not treated as a capture group.

I tested with GNU sed version 4.7 and it is not needed, the example above works, but it also expects a lower case i as the "in place" parameter.

Upvotes: 3

Related Questions