AWK 脚本到制表符分隔行上的子字符串

AWK script to Substring on tab delmited line


我正在尝试对我的一个项目执行 awk 脚本。我卡在了下面的场景中,

Persons.txt(制表符分隔文件)

A   M   DHANABALAN  INDIA ....
B   F   SUBHA   US  

我想将第二个选项卡 M 替换为 Male 并将 F 替换为 Female 并保持所有其他选项卡值不变。

预期输出

A   Male    DHANABALAN  INDIA ....
B   Female  SUBHA   US  

我正在尝试如下

我的代码

{ 
    if(  == "M"){
        print  "Male" 
    }else{
        print  "Female"
    }
}

不知道如何打印剩余的标签。请协助我。

$ awk '{ 
    if(=="M"){
        ="Male" 
    }
    else{
        ="Female"
    }
    {print}
}' file

$ awk '{=="M"?="Male":="Female"}1' file

输出:

A Male DHANABALAN INDIA ....
B Female SUBHA US