Eu quero mudar o tamanho da letra n-th de uma corda em BASH
(ou quaisquer outras ferramentas * nix, por exemplo sed
, awk
, tr
, etc).
Eu sei que você pode alterar o caso de uma string inteira usando:
${str,,} # to lowercase
${str^^} # to uppercase
É possível alterar a caixa da terceira letra de "Teste" para maiúscula?
$ export str="Test"
$ echo ${str^^:3}
TeSt
~
, emperl
solução?$ARGV[0]=~
vez de<<<$str
. Obrigado.bash
pode ser encurtado comfoo=${str:2}
e${foo^}
, que apenas coloca em maiúscula o primeiro caractere na sequência.Com o GNU
sed
(possivelmente outros)Com
awk
fonte
Outro
perl
:A forma geral é
substr($_,n,1)
onden
está a posição da letra que você deseja inverter o caso (índice baseado em 0).Quando você xou um caractere ASCII com espaço, inverte seu caso.
fonte