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).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…