bash命令错误

mon*_*ool 1 linux bash

i=0
while read line

    do
    echo "i is --- $i"
    #echo $line "\n"

    if (( $i > 0 ))
    then
    $Eda_package=$(echo $line | awk '{print $1}')
    $well_bias=$(echo $line | awk '{print $2}')
    $biasmap=$(echo $line | awk '{print $3}')
    $unified=$(echo $line | awk '{print $4}')
    echo "eda pack --$Eda_package  wellbias is --$well_bias biasmap is --$biasmap  unified-      -- $unified"
    fi
    i=$((i+1))
    done < config.list
Run Code Online (Sandbox Code Playgroud)

在上面的bash程序中,我收到一个错误:

./script.sh:line 9:= EDA_7p0:找不到命令

我该如何解决?

pax*_*blo 5

形式的行:

$xyzzy=plugh
Run Code Online (Sandbox Code Playgroud)

xyzzy 在它们被执行之前被替换为它们看起来像:

=plugh
Run Code Online (Sandbox Code Playgroud)

假设它们尚未设定.如果它们设置,你可能会得到不同的行为,但几乎肯定不是你想要的.

你应该改变你的线(例如):

$Eda_package=$(echo $line | awk '{print $1}')
Run Code Online (Sandbox Code Playgroud)

至:

Eda_package=$(echo $line | awk '{print $1}')
Run Code Online (Sandbox Code Playgroud)

$是不变量名的一部分,它是一个指示,以下单词应被取代的变量.