ファイルのすべての行を読み取り、特定の一致に基づいて出力するスクリプトがあります。
function tohyphen (o) {
split (o,a,"to[-_]")
split (a[2],b,"-")
if (b[1] ~ / /) { k=""; p=""; }
else { k=b[1]; p=b[2] }
if (p ~ / /) { p="" }
return k
}
print k, "is present in" , FILENAME
私がする必要があるのは、kの値がたとえば約60の他のファイルに存在するかどうかを確認し、そのファイル名を出力することです。また、元の読み取りであったファイルを無視する必要があります。現在、 grep でこれを行っていますが、 grep の呼び出し非常に多くの場合、CPU が高くなります。awk スクリプト自体でこれを行う方法はありますか。