Remove prefix of each line in a file and output to another file using sed

Viewed 3920

I have a source code file in which comments are prefixed with // (ie. double slashes and an empty space), I want to convert the source code into a document so I tried to cat file.c and pipe it to sed, the thinking is to replace "double slash and a space" if a line starts with it, with empty string, but it looks like the slash has some special meaning in sed, so what's the best way of constructing the sed arguments?

Thanks!

2 Answers

If you want to remove the special meaning of / from sed then following may help you in same.

sed 's/^\/\/ //g'  Input_file

So I am escaping / here by using \ before it, so it will be taken as a literal character rather than it's special meaning in code. Also if you are happy with above command's result then use -i to save the changes in Input_file itself. Hope this helps.

The slash only has meaning if you allow it.

sed 's#^// +##' < file.c
Related