0

我该如何执行

c=bin\jlogin -c "exit" $value |grep "Error" >>test  in bash 

我想将返回值存储在 c 变量中。$value 包含一些以前解析的数据..我想将完整的字符串作为命令运行,但是当我运行 shell 时出现错误

=bin\jlogin command not found.

小子帮助我发生了什么以及我如何解决它!搜索谷歌,但它没有显示像用户定义的变量这样复杂的结果,提前谢谢

4

2 回答 2

1

我不确定\j这里是什么意思,但我认为您正在寻找的是反引号运算符:

c=`((bin/jlogin -c "exit" $value ; echo $? >&3) | grep "Error" >> test) 3>&1)`

这会将 jlogin 的退出值重定向到句柄 3,然后将其重定向回 STDOUT,该 STDOUT 将被复制到$c.

于 2012-09-18T15:49:34.010 回答
1

这是你想要做的吗?:

/bin/jlogin -c exit "$value" | grep Error >>test
c=$?

这将运行命令/bin/jlogin -c exit "$value",将其输出通过管道传输到grep Error >>test. 如果找到字符串,它将设置$c为,如果没有找到。0Error1

于 2012-09-18T15:50:15.537 回答