I was able to reproduce this behavior using Vista and Cygwin 1.7.0.
- Two backslashes produce the error
- either three or four backslashes work
- Five gives the same error
Two backslashes become a single backslash in the shell which then in sed escapes the forward slash which is the middle delimiter.
\\/ -> \/ (which makes the forward slash a regular character instead of a delimiter)
Three of them: The first two become one in the shell which then escape the third one in sed
\\\/ -> \\/
Four: Each pair become single ones in the shell then the first resulting one escapes the second in sed
\\\\/ -> \\/
Edit:
Oh, I forgot to say that both single quotes and double quotes worked the same for me (cmd.exe
doesn't make the distinction that Bash, et al, makes).