awk:cmd。 line:1:致命:无法打开文件`-eq'进行读取(没有这样的文件或目录)

时间:2015-09-16 14:32:25

标签: bash awk

我对bash脚本非常陌生,我尝试检查此错误的先前示例,但我仍然没有说明为什么这不起作用

以下是抛出错误的代码信息:

#!/bin/bash

function group_check(){
    if [[getent group | awk -F":" '{print$1}' -eq $1 ]] ; then
            echo "The user exists!"
    else
            echo "The user doesn't exist!"
    fi
}

group_check tim
group_check tam

希望有人不能指出哪里出错或者甚至建议更好的方法,但我很想知道我哪里出错了。

由于

1 个答案:

答案 0 :(得分:2)

如果要将命令的输出与数字进行比较,则必须将命令括在$(...)中以捕获其输出:

if [[ $( getent group | awk -F":" '{print$1}' ) -eq $1 ]] ; then

请注意[[之后的空格不是可选的。

另请注意-eq比较数字,您应该使用==进行字符串比较。