我正在使用 awk 将值存储为数组的下标/索引的概念。请看下面的代码
stringVariable="hi,bye,cool.hot,how,see";
split(stringVariable,stringArray,",");
#This loop will iterate and stores the RIDs in the requestIds variable into an array
for(tr=1;tr<=length(stringArray);tr++)
{
Count++;
referenceIdArray[stringArray[tr]]++;
}
所以在我的 referenceId 数组中,我会有 hi,bye,cool,hot,how,see
让我考虑一个具有以下值的示例文件
hi
bye
gone
我的目标是从文件中获取值并与先前声明的数组匹配,如果任何值匹配,则打印文件中的值
awk script
awk '{BEGIN (Array loading done previously)} {if($0 in referenceIdArray) {print $0}}'
所以这会给我想要的结果。但是假设“hi”在数组中只出现一次,因此当动作块找到值时,应该打印该值,并且数组中的相应条目 referenceIdArray[“hi”] 也应该在为了使搜索有效。由于它们存储为下标,我不确定如何删除该条目。对此有任何建议。谢谢你。