Em não sei o que você está tentando fazer com este script, mas olhando para ele pela primeira vez, vejo os erros são por causa desta linha:
if ($(echo $word | head -c 1)"=$1 then
Faça como:
if [ "$(echo $word | head -c 1)" = "$1" ]; then
ao fazer uma verificação com if-then
de construção condicional use test
( [
) ou [[
( bash
-ism). Verifique help test
para mais informações.
Quando você está fazendo if ($(echo $word | head -c 1)"=$1 then
:
-
Há erros de sintaxe,
(
apósif
e"
antes de=
, talvez você quisesse dizer"$(echo $word | head -c 1)"
-
Além disso, como você não usa
test
(ou[[
), o=
simplesmente sugere que você está fazendo uma atribuição variável. Então você precisa de[
(test
) ou[[
para ter certeza de que está comparando as coisas -
Além disso, você perdeu um
;
antes dethen
, que é uma abreviação de nova linha (ou você pode colocarthen
na próxima linha)
Além disso, seu script parece ineficiente (para ser honesto) para mim, olhando para os comandos que você usou para fazer o trabalho (não sei o que) feito. Talvez você deva ler as respostas de script postadas aqui e outros sites para ter uma idéia sobre qual ferramenta usar em qual situação, fazer uma nova pergunta para ver o que os outros sugerem para resolver seu problema e, claro, usar recuo.