永发信息网

shell里面的index函数

答案:2  悬赏:30  手机版
解决时间 2021-03-10 19:33
shell里面的index函数
最佳答案
你说的awk index?
如何测试一个字符串在另外一个字符串里?比如a="11",b="11 22 33 44",如何判断a是否存在与b中?这就需要用index()函数。我们讲一个例子:

文件a:
36 18 19 70 97
66 71 13 23 48
23 68 88 11 12

文件b:
97 19 18 36 18 28 71
53 24 33 48 13 66 25
55 12 11 75 36 23 19

要求文件a里对应文件b里的行,如果文件a里出现过的数字,在文件b里标记出来。

$ awk '{getline v<"a";for(i=1;i<=NF;i++)if(index(v,$i))$i="-"$i}1' b

-97 -19 -18 -36 -18 28 71

53 24 33 -48 -13 -66 25

55 -12 -11 75 36 -23 19
[解析]
index(s, t) Returns the index of the string t in the string s.
返回t字符串存在与s字符串中位置的正整数,不存在则返回0。

awk 'ARGIND==1{for(i=1;i<=NF;i++)a[FNR","$i];next}{for(i=1;i<=NF;i++){FNR","$i in a?$i="-"$i:0}}1' a b
全部回答
函数没有参数那还叫函数吗? shell 中定义一个函数是不需要说明参数的,使用的时候可以给它参数,多少都可以,在函数中,引用参数,$1,$2,就是第一个参数,第二个参数的意思。 比如: .. function han { echo $1 } han "hello world!" .. 在shell 执行后,会显示 hello world!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
华富阁在什么地方啊,我要过去处理事情
ATM机在存钱过程中突然停电卡出来 钱没出来怎
Oscar Pistorius 刀锋飞人跟正常人比赛是有优
奔奔迷你换完电瓶怎么会有故障码
Y609/横江大道(路口)地址在哪,我要去那里办
毛呢衣服总是起球正常吗
图中小手机和小空间图标用什么软件做?
君威车转向灯故障,怎么回事
【机械制图图纸】机械制图图纸的格式分为()两
天力农资我想知道这个在什么地方
圆通快递不派送点怎么取
喝自己的尿能增加人的寿命?
饱和食盐水降温析出晶体热力学解释
滴滴顺风车用什么软件
我的工行信用卡额度一万的,刷了四千需还款多
推荐资讯
求2012年最新动作片!还有无广告!无弹窗的电
为什么刘德华结婚了也不说呢
今天来了个电话 说是淘宝订单异常处理 让我加
广州芳村客运站有车到深圳宝安客运站吗
新民市文荟法律服务所这个地址在什么地方,我
蒙语特日根的含义是什么
酸洗板是什么
黄南藏族自治州国有资产监督管理委员会我想知
帝豪EC7RV与新宝来哪个车身结实安全,哪个质
人体与外界进行气体交换的器官是肺,人体形成
全成驾校地址在哪,我要去那里办事
吉他谱,这个表示什么意思,带圈数字!
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?