我的档案里有这一行:

,2,353867835022;11,353681041426390,272023201187741,272-02f-20017-06609,353854100352;11,,,,,,,0854100352,3,00,,O,D,DATA,,,7124395,,,17687,16,HPLMN,M20MSS_TTFILE_8377_20110528170245,M20MSS,W30B22I;0GRI3,1,20110528130013,170054,1,41,,,,,,,,0,,,,,,,,,,,,,,,,,,353868001820,,,,b60a5c0014,1:353867835022::::0854100352::353854100352,,,,,,,,

对,
这是一个逗号“,”分隔文件。有一个数字17687。我想知道行中该字段的数字是多少。
我想使用它作为基础,并将其包含在shell脚本中。

最佳答案

字段26:

% awk -F',' '/17687/ {
    for (f = 0; f < NF; ++f) {
        if ($f == "17687") {
            print $f " found in field number " f " of " NF " on line " NR "."
        }
    }
}' test.csv
17687 found in field number 26 of 75 on line 1.

这允许在多行的多个字段中查找17687。
希望这有帮助。

09-28 06:48