O que há de errado com este script de shell
Pergunta
market_l="${echo $1 | awk '{print tolower($0)}'}"
echo $market_l
Quando eu executo isso, está me dando um erro abaixo:
./test: market_l="${echo $1 | awk '{print tolower($0)}'}": The specified substitution is not valid for this command.
Solução
Você quis usar o $()
operador em vez de ${}
?
Outras dicas
você deveria usar $()
Para atribuir saída a uma variável. não ${}
market_l="$(echo $1 | awk '{print tolower($0)}')"
ou você pode fazer isso com KSH
#!/bin/ksh
typeset -l market_l
market_l="$1"
echo $market_l
Outras maneiras de mudar o caso além awk
, Para sua informação
$ echo "$1"|tr [A-Z] [a-z]
$ echo "$1"|sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow