楼 主
sed替换变量的相关问题
发表于 2007-02-12 11:05 · 中国 甘肃 兰州 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
昨天弄那个“按标记分割文件”的时候做了个实验,其中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 ]
第 2 楼
发表于 2007-02-14 00:58 · 中国 河南 郑州 联通
新手上路
★
积分 4
发帖 2
注册 2007-02-13 04:54
19年会员
UID 79355
性别 男
状态 离线
第 3 楼
发表于 2007-02-14 01:47 · 中国 甘肃 兰州 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
Originally posted by wy371tt1 at 2007-2-14 00:58:
命令行不需要转义,bat需要转义
转义,说的不合适吧?
第 4 楼
发表于 2007-02-14 03:48 · 中国 河南 郑州 联通
新手上路
★
积分 4
发帖 2
注册 2007-02-13 04:54
19年会员
UID 79355
性别 男
状态 离线
第 5 楼
发表于 2007-02-14 13:13 · 美国 北达科他州立大学
中级用户
★★
积分 316
发帖 152
注册 2006-06-18 13:01
20年会员
UID 57204
性别 男
状态 离线
个人认为,有点类似于for中参数的用法,虽然不尽相同
论坛跳转: