bash: erro de sintaxe próximo ao token inesperado '('

3

Estou tentando concatenar alguns arquivos lado a lado.

Eu uso o comando pr no terminal. Funciona bem, mas quando eu uso em um script de shell, recebo a seguinte mensagem de erro:

syntax error near unexpected token '('

Aqui está o script:

#!/bin/sh
myfile1=toto1.dat
myfile1=toto2.dat
file_out=mytoto_out.dat
touch ${file_out}
/usr/bin/pr -mts' ' <( /usr/bin/cut -d' ' -s -f1,2,3,4,5,6,7,8,9,10,11 ${myfile1}) <( /usr/bin/cut -d' ' -s -f8 $myfile2) >>${file_out}
echo ${file_out} " is done"
    
por user77083 10.07.2014 / 14:20

1 resposta

6

Na linha de comando, seu shell é bash. Em seu script, você está usando /bin/sh . /bin/sh aparentemente não é bash no seu sistema, e a sintaxe <() aparentemente não está presente em qualquer shell /bin/sh .

Altere o shebang (a parte #!/bin/sh ) para #!/bin/bash .

    
por 10.07.2014 / 14:38