token inesperado '' ao chamar do arquivo principal

1

Estou escrevendo um script de gerador de configuração.

Quando colo o código de função ( setup_displays ) diretamente no terminal, tudo funciona. Mas quando eu chamo sh generator.sh eu recebo este erro:

functions.sh: line 3: ./helpers.sh: Permission denied
functions.sh: line 75: syntax error near unexpected token '<'
functions.sh: line 75: '  done< <(echo $display_result)'

generator.sh

#!/bin/bash
set -x
source functions.sh
setup_display

functions.sh

#!/bin/sh
source ./helpers.sh

setup_display() {
 display_result=2 87 800 600 60 1 0 0 0

  # setting params
  while read -r hdmi_group hdmi_mode hdmi_cvt; do
    echo "hdmi_mode" "$hdmi_mode"
    echo "hdmi_group" "$hdmi_group"
    echo "hdmi_cvt" "$hdmi_cvt"
  done< <(echo $display_result)    # line 75
}

Esta é a saída correta

hdmi_mode 87
hdmi_group 2
hdmi_cvt 800 600 60 1 0 0 0

O que estou fazendo errado?

    
por Jan 03.11.2018 / 16:56

1 resposta

2

#!/bin/sh não é equivalente a #!/bin/bash .

De qualquer forma: isso é inútil uso de eco. Use

done <<<$display_result

em vez disso.

    
por 03.11.2018 / 17:07