Bash wskazuje strzałkę na "else" i mówi "błąd składni" w prowokującym, jęczącym tonie.Awk, jeśli jeszcze wyda
awk '{if($3 != 0) a = ($3/$4) print $0, a; else if($3==0) print $0, "-" }' file > out
Dlaczego?
Bash wskazuje strzałkę na "else" i mówi "błąd składni" w prowokującym, jęczącym tonie.Awk, jeśli jeszcze wyda
awk '{if($3 != 0) a = ($3/$4) print $0, a; else if($3==0) print $0, "-" }' file > out
Dlaczego?
Zapomniałeś nawiasów klamrowych wokół bloku if oraz średnika między instrukcjami w bloku.
awk '{if($3 != 0) {a = ($3/$4); print $0, a;} else if($3==0) print $0, "-" }' file > out
Spróbuj kod
awk '{s=($3==0)?"-":$3/$4; print s}'
wciąż się dzielenie przez zero próbował – AWE
@AWE: Dodaj do czynienia z testu '$ 4' jest 0. –
zrobiłem, to awk dla niego i nie robi istnieje. – AWE