中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-26 11:43
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » sed 替换特殊符号的问题 查看 1,159 回复 6
楼 主 sed 替换特殊符号的问题 发表于 2006-10-31 01:31 ·  中国 甘肃 甘南藏族自治州 合作市 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
test.txt
/
^

用sed替换/为0,^为1

^替换变通的方法是
sed "s/^/★/" test.txt|sed "s/★^/1/"


想过用 sed s/\x22/双引号/ 的方法来替换,可我试了\x00-\x200 没有发现

不过发现了个好用法
sed "s/^/★/;s/\x24/★/" test.txt

我想到的方法,欢迎大家一起讨论sed哈~

[ Last edited by he200377 on 2006-10-31 at 01:34 AM ]
2 发表于 2006-10-31 01:32 ·  中国 甘肃 甘南藏族自治州 合作市 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
不知道 / 怎么替换,郁闷中
http://www.xx.xx/xx.exe

sed "s/http:*.exe/url/" 不可以,真想不到好方法了
3 发表于 2006-10-31 01:41 ·  中国 浙江 宁波 鹏博士宽带
荣誉版主
★★★
积分 1,338
发帖 356
注册 2005-07-15 12:09
20年会员
UID 40733
性别 男
状态 离线
重定义一下 s 命令的操作符可以避免操作符的转义。
sed "s#http://www.xx.xx/xx.exe#url#"
  ☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul

4 发表于 2006-10-31 01:42 ·  中国 甘肃 甘南藏族自治州 合作市 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
Originally posted by 无奈何 at 2006-10-31 01:41:
重定义一下 s 命令的操作符可以避免操作符的转义。
sed "s#http://www.xx.xx/xx.exe#url#"

还是斑竹厉害~现在所有的符号全部可以替换了 x
5 发表于 2006-10-31 01:46 ·  中国 甘肃 甘南藏族自治州 合作市 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
无奈何 斑竹
test.txt
123^456

^前面的字符不确定的情况下怎么替换^为0那?
6 发表于 2006-10-31 01:51 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线

  关于第一个替换文本的,这个死方法也行的啊。

sed -e "s/\^/0/" -e "s/\//1/" test.txt
7 发表于 2006-10-31 02:07 ·  中国 甘肃 甘南藏族自治州 合作市 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
Originally posted by lxmxn at 2006-10-31 01:51:

  关于第一个替换文本的,这个死方法也行的啊。

sed -e "s/\^/0/" -e "s/\//1/" test.txt

thanks
论坛跳转: