Estou recebendo um erro bash: syntax near unexpected token '('

4

Estou trabalhando para salvar as pontuações mais altas da minha board Game Elf JAMMA (412-em-1). Atualmente estou seguindo este tutorial . Estou tentando executar este comando

mv hiscore(pre_mame0133u1).dat /mnt/three/usr/local/share/xmame/hiscore.dat

mas, como você pode ver na minha captura de tela , está retornando um erro

bash: syntax error near unexpected token '('

    
por Kenyon Geetings 27.12.2017 / 18:03

1 resposta

9

bash: syntax error near unexpected token '('

Você precisa escapar dos parênteses:

mv hiscore\(pre_mame0133u1\).dat /mnt/three/usr/local/share/xmame/hiscore.dat

Nota:

Para referência futura, você pode usar ShellCheck para encontrar bugs no seu código bash. Digitar o script não corrigido fornece o seguinte:

$ shellcheck myscript

Line 1:
mv hiscore(pre_mame0133u1).dat /mnt/three/usr/local/share/xmame/hiscore.dat
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang.
          ^-- SC1036: '(' is invalid here. Did you forget to escape it?
          ^-- SC1088: Parsing stopped here. Invalid use of parentheses?

Corrigindo o primeiro erro:

$ shellcheck myscript

Line 1:
mv hiscore\(pre_mame0133u1).dat /mnt/three/usr/local/share/xmame/hiscore.dat
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang.
                          ^-- SC1089: Parsing stopped here. Is this keyword correctly matched up?

E corrigindo o segundo erro:

$ shellcheck myscript

Line 1:
mv hiscore\(pre_mame0133u1\).dat /mnt/three/usr/local/share/xmame/hiscore.dat
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang.

Leitura Adicional

por 27.12.2017 / 18:11