技术解析

遇到个小问题
0
2021-06-28 07:45:11
idczone

如何把如下

master g y9_5 5
slave g y9_6 6
master g y5_1 1
slave g y5_2 2
slave g y5_3 3

打印成

1 master G y9_5 6
1 slave G y9_6 
2 master G y5_1 2,3
2 slave G y5_2 
2 slave G y5_3 

感觉没什么难度,但是想不出来怎么搞

这个不是很简单么,先吧 master slave 分类,然后根据 y{x} 来输出

没看出逻辑联系

来来 奉献你的代码

第一次见到求人还趾高气昂的。
另外,连问题都描述不清楚,你还是转行吧。

88 隐藏

差不多好了。另 心态不好的麻烦别来回帖

刚开始尝试用 awk 发现挺麻烦,然后用 python 弄出来。。。
到这一看楼主这态度, 我还是不贴出来献丑了。

也是用 py 弄的,搞定
另 这么容易被带节奏?

看不懂把什么打印成什么? 看来是我老了

你连规则都懒得说明一下,那我只能告诉你,把你想要的结果 echo 一下就打印出来了

谢谢

这个还是比较有规律的就是第三段,yA_b,c,d 是排序的,如果数量多,混杂,那就麻烦一点了
这可以按行读取成 list,['master','g',y9',[5]]
对于 list[1]进行 upper,list[2]按'-'分割保留前部分,后部分放到 list[3],也是一个 list
list[2]进行判断,与 i-1 即上一位的 list[2]判定相同即把 list[3]塞到 i-1 的 list[3]

奉献:
释义:“奉”,即“捧”,意思是“给、献给”;“献”,原意为“献祭”,指“把实物或意见等恭敬庄严地送给集体或尊敬的人”。

傻逼

沉了吧,情商低,无意冒犯。
只是,觉得,风气不在

排斥低水平討論對社區不一是壞事 (當然對你不一定是好事)

my = [.words for q:to/EOF/.lines];
master g y9_5 5
slave g y9_6 6
master g y5_1 1
slave g y5_2 2
slave g y5_3 3
EOF
my %all = = %all.grep({ .[2] ~~ /^y"$y"/ });
print [ .[0], .[1].uc, | .[2..*-2] ].join(" "), " ";
say @(@slave>>.[3]).join(" ");
say .[0..*-2].join(" ") for @slave;
}
run: https://ideone.com/CpzgdT

也不知道这也能刺疼别人,毕竟都是陌生人。当然也希望大家都有一颗强大的内心。
谢谢,沉了吧

不合格的运维表示只会用 python 做

也只会用 pyhton ……
https://i.loli.net/2017/10/26/59f1f01deda71.png

awk 'NR==FNR{if(/^m/)i++;else a[i]=a[i]?a[i]","$NF:$NF;next}/^m/{j++}{NF--;print j,$0,(/^m/?a[j]:n)}' a a
1 master g y9_5 6
1 slave g y9_6
2 master g y5_1 2,3
2 slave g y5_2
2 slave g y5_3

没感觉楼主语气有什么问题,部分人性格不合不能理解玩笑就不要回复不就好了?非要评论下面酸一下我也是不懂。。。 论坛本来就是为了聚集志同道合的人的,道不同不相为谋转头就走呗

确实是用开玩笑的语气说,只是玩笑的方式有时会造成锋芒毕露成了别人扣帽子的把柄。
谢谢啦。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服