在Bash中设置while循环中的变量

时间:2015-09-19 14:38:47

标签: bash

我正在尝试设置变量,因此我可以在Bash中使用它们进行while循环评估。

num1:<input id="num1" type="number">
num2:<input id="num2" type="number">

<button type="button" onclick="myFunction()">compute</button>

answer:<input id="demo" type="text"> and answer: <p id="demo"></p>

<script>
function myFunction() {
    var x = document.getElementById("num1").value;
    var y = document.getElementById("num2").value;
    var ans = x + y;
    document.getElementById("demo").innerHTML = ans;
}
</script>

当我运行它时,我收到以下错误:

while read l; do
  echo $l
  HASH=echo $l | awk '{print$1}'
  FILE_NAME=echo $l | awk '{print$2}'
  echo $HASH
  echo $FILE_NAME
done <$OLD_LOG_FILE

第38和39行是设置HASH和FILE_NAME的行。

我使用单引号,而不是引号。

是否应使用其他方法设置HASH和FILE_NAME变量?

1 个答案:

答案 0 :(得分:4)

您想要命令替换:

HASH=$(echo $l | awk '{print$1}')

您正在使用的是使用预设环境变量执行程序的特殊语法:

var1=value progname args...

因此bash抱怨$l的值不是可以找到的命令。