昨天弄那个“按标记分割文件”的时候做了个实验,其中sed替换变量有些不明白的
例如已定义 set var=123
我想替换a.txt中所有字符 0 为 %var%
在命令行下:
sed "s/0/\%var\%/" a.txt
写在bat中:
继续这样写 sed "s/0/\%var\%/" a.txt就sed出错
而要写为sed "s/0/%%var%%/" a.txt
还有要是想替换a.txt中所有字符 0 为 %1,而你又有%1,这时候在bat中也要写为sed "s/0/%%1/" a.txt
这就不明白了,为什么在命令行和在bat中不一样?
[ Last edited by vkill on 2007-2-12 at 10:59 PM ]
例如已定义 set var=123
我想替换a.txt中所有字符 0 为 %var%
在命令行下:
sed "s/0/\%var\%/" a.txt
写在bat中:
继续这样写 sed "s/0/\%var\%/" a.txt就sed出错
而要写为sed "s/0/%%var%%/" a.txt
还有要是想替换a.txt中所有字符 0 为 %1,而你又有%1,这时候在bat中也要写为sed "s/0/%%1/" a.txt
这就不明白了,为什么在命令行和在bat中不一样?
[ Last edited by vkill on 2007-2-12 at 10:59 PM ]
