linux想用sed命令把一个字符串替换为递增数字,怎么表示,谢谢

 我来答
百度网友5311d79
推荐于2016-02-25 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3140万
展开全部
echo "猜指乱Miss_abc_go" | sed 's/abc/123/'

问题不是很清楚,我只也能这么揣测你的意图了。

本例将字符串"Miss_abc_go"中的abc替换为递增数字123。

 

当然,也还有其他方法,比如用tr命逗败令代换:

echo "Miss_abc_go" | tr "abc"穗档 "123"
追问
就是一个文件有多个相同的字符串,比如aaaa,
想把第一个aaaa替换成1,第二个替换成2,依此类推
追答

哦,这样讲就明白了。

sed内部无法对变量做自增运算,所以这种情况用awk可能更合适些,awk基本可以看做一个小型语言,内部语法与C语言类似。

试试这个:

awk -v RS="aaaa" '{n+=1;printf $0n}' textfile
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式