我正在尝试使用以下 awk 命令从列出系统上所有用户的文件中返回用户,但前提是第 8 个字段为空并且它们与用户变量匹配(它正在循环中使用):
awk -F':' -v user="$user" 'index($0, user) {if ($8=="") print $1}' file
目前我的问题是它返回包含字符串且不完全匹配的用户。有什么办法解决这个问题吗?
答案1
解决了。
我最终使用了:
awk -F':' -v user="$user" '$1 == user {if ($8 == "") print $1}' file
我是个傻孩子哈哈
答案2
上面的答案是正确的...但是我们可以使用以下命令提取详细信息。
awk -F ',' '{if ( $9 == "" && $1 ==="$user") 打印 $1}' 文件