mssql cygwin结果变成了变量

时间:2014-02-27 12:59:51

标签: sql-server bash cygwin

 $ sqlcmd -Q "select state from sys.databases where name='test1'"
state
-----
   6

(1 rows affected)

所以我需要的是在这种情况下使用结果整数6作为if eq语句的变量。

我该怎么做?

sqlcmd -Q "select state from sys.databases where name='test1'" | grep -v state | sed 's/^$\|^[ \t]*\|-\|(\|)\|1\|rows affected//g'

结果:

6

1 个答案:

答案 0 :(得分:0)

使用变量存储命令的结果,然后测试该变量:

myVar=$(sqlcmd -Q "select state from sys.databases where name='test1'" | grep -v state | sed 's/^$\|^[ \t]*\|-\|(\|)\|1\|rows affected//g')

if [ $myVar -eq 6 ]; then
    ...etc
fi