我已经定义了一个变量为list,我想在其中添加从sql派生的结果。我的shell脚本如下所示-
list=""
setLiveTables()
{
liveTablesList=`"SELECT CalculatorName FROM TableList"`
if echo "$liveTablesList"; then
echo "${liveTablesList}" | while read line
do
trimLine=`echo $line | sed 's/ *$//g'`
listCalc+=""${trimLine}","
done
list=$listCalc
}
doSomething()
{
setLiveTables
# Do some curl call with data $list
# Here list appears empty
}
doSomething
在doSomething函数中,即使从sql获得响应,我也会获得列表值,该列表始终为空。如果我将listCalc记录在setLiveTables中,我会获得其中的数据。
1条答案
按热度按时间pes8fvy91#
有两种可能的解决方案:
1.禁用
lastpipe
1.拆下管道
正如其他人提到的,使用ShellCheck可以更早地捕获这类错误