在我的vim中,我可以使用:%!sed "s/^/ /"
命令,但当我使用:%!sed 's/^/ /'
时,输出结果错误。
sed: -e expression #1, char 0: no previous regular expression
在vim命令模式下,单引号和双引号之间有什么区别吗?在我的sed中,单引号与双引号相同。
$ echo "wha012" | sed 's/w/haha/'
hahaha012
$ echo "wha012" | sed "s/w/haha/"
hahaha012
我的系统是XP操作系统,使用Vim 7.3版本。
在我的系统中:
[1] "c://cygwin/bin/ash.exe"
[2] "c://cygwin/bin/bash.exe"
[3] "c://cygwin/bin/dash.exe"
[4] "c://cygwin/bin/sh.exe"
如果我在_vimrc
文件中设置set shell=\"c:\cygwin\bin\sh.exe"\ -f
,我会收到新的错误消息:
找不到sed命令。
%!sed '..'
和%!sed“…”
都可以正常工作。 - Kent