调用awk的bash脚本未输出预期结果,请求故障排查
问题分析与解决
你的脚本无输出的核心原因是awk默认以空白字符作为字段分隔符,但你的数据文件用|分割字段,导致awk把整行内容当成$1,自然和传入的参数8975匹配不上,因此没有输出结果。
修复方法
修改go脚本中的awk调用,添加-F'|'参数指定字段分隔符为|:
#!/bin/bash exec awk -F'|' -v arg=${1:?} '$1==arg' "${@:2}" /usr/data/doc
验证执行
再次运行go 8975,就能得到预期输出:
8975|Linux|UserB 8975|Linux|UserC
内容的提问来源于stack exchange,提问作者anukalps
相关产品推荐
相关产品推荐

