免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4527 | 回复: 10

怎样批量修改id下的数字? [复制链接]

论坛徽章:
2
15-16赛季CBA联赛之浙江
日期:2016-04-26 14:03:26程序设计版块每日发帖之星
日期:2016-04-29 06:20:00
发表于 2016-05-20 09:07 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
发表于 2016-05-20 09:34 |显示全部楼层
$ cat FILE
>NP_1
12
>XP_2
32
>NP_3
89

$ perl -lape '{$_=1000 if(m/^\s*[^>]/)}' FILE
>NP_1
1000
>XP_2
1000
>NP_3
1000

评分

参与人数 1信誉积分 +5 收起 理由
sunzhiguolu + 5 您的答案永远是最给力的!!!

查看全部评分

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2016-05-20 09:53 |显示全部楼层
本帖最后由 sunzhiguolu 于 2016-05-20 17:18 编辑
  1. perl -ple 's!\A(\s*)[^>\s]+?\z!${1}1000!' f
复制代码
>NP_1
          1000
       >XP_2
          1000
       >NP_3
          1000

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2016-05-20 10:52 |显示全部楼层
本帖最后由 sunzhiguolu 于 2016-05-20 13:33 编辑
perl -ple 's/\A(\s*)[^>]*?\n/${1}1000/' f
















论坛徽章:
6
15-16赛季CBA联赛之新疆
日期:2016-03-22 22:34:5915-16赛季CBA联赛之山东
日期:2016-04-11 09:08:41程序设计版块每日发帖之星
日期:2016-06-28 06:20:00程序设计版块每日发帖之星
日期:2016-07-19 06:20:00每日论坛发贴之星
日期:2016-07-19 06:20:0015-16赛季CBA联赛之青岛
日期:2016-07-20 22:44:17
发表于 2016-05-20 12:01 |显示全部楼层
你老兄的思路好奇怪,不是把数字换成1000吗?为啥要匹配不是大于号的呢?来个空行咋整?
$> cat aa |perl -npe 's/^\d+$/1000/'

>NP_1
1000
>XP_2
1000
>NP_3
1000

评分

参与人数 2信誉积分 +10 收起 理由
_SHELL_ + 5 问题指出的非常到位, 学习了!!!
sunzhiguolu + 5 您头像很萌...

查看全部评分

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2016-05-20 12:28 |显示全部楼层
本帖最后由 sunzhiguolu 于 2016-05-20 12:56 编辑

回复 5# RE_HASH
  1. cat f
复制代码
>NP_1
          12
                  14

                        1_000_000
       >XP_2
          32

       >NP_3
          89
          44
          31
  1. perl -ple 's/\A((?>\s*))[^>]+/${1}1000/' f
复制代码
>NP_1
          1000
                  1000

                        1000
       >XP_2
          1000

       >NP_3
          1000
          1000
          1000



   

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2016-05-20 13:00 |显示全部楼层
回复 5# RE_HASH
谢谢大神提醒, 我已经改正了, .

   

论坛徽章:
1
15-16赛季CBA联赛之山东
日期:2016-05-13 00:06:39
发表于 2016-05-20 13:29 |显示全部楼层
回复 5# RE_HASH
                  

   

论坛徽章:
2
15-16赛季CBA联赛之浙江
日期:2016-04-26 14:03:26程序设计版块每日发帖之星
日期:2016-04-29 06:20:00
发表于 2016-07-15 14:58 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2016-07-31 22:29 |显示全部楼层
  1. perl -ne 'print "$_${1}1000\n" if(/\A(\s*)>/)' f
复制代码
>NP_1
        1000
       >XP_2
       1000
       >NP_3
       1000
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP