我不确定如何在nawk
命令中实现函数调用。我已经从输入和输出中给出了我想要的范围。该函数应验证第 3 列并返回 true 或 false。如果列满足条件,那么它应该转到好文件;如果不去坏文件。您能帮我修改nawk
命令以实现我的功能吗?
我知道我们可以在单个语句中实现长度验证,但我的验证函数只是示例代码。我想在验证功能中实现更多的长度检查。
输入.txt:
1 | I | 123 | KK
3 | U | 3456 | JJ
6 | B | 241 | YH
输出好.txt:
3 | U | 3456 | JJ
输出坏.txt:
1 | I | 123 | KK
6 | B | 241 | YH
脚本:
#!/bin/sh
#function validation
function validate(){
in = $1
if length(in) > 3
return true
else
return false
}
nawk -F '|' 'function validate($3){print}' input.txt > outputgood.txt