Já que você tem uma sed
tag, aqui está uma sed
resposta:
echo "$word" | sed -e "{ s/^\(.\).*/\1/ ; q }"
Jogo a jogo para quem gosta disso (eu gosto!):
{
s
: iniciar uma rotina de substituição
/
: Comece especificando o que deve ser substituído
^\(.\)
: captura o primeiro personagem do Grupo 1
.*
:, certifique-se de que o resto da linha estará na substituição
/
: comece especificando a substituição
\1
: inserir Grupo 1
/
: O resto é descartado;
q
: Saia sed
para não repetir este bloco para outras linhas, se houver.
}
Bem, isso foi divertido! :)
Você também pode usar grep
e etc, mas se você estiver bash
na ${x:0:1}
magia ainda é a melhor solução imo. (Passei uma hora tentando usar a expansão de variável POSIX para fazer isso, mas não consegui :(
)
-c
opção no cabeçote POSIX: < unix.com/man-page/posix/1/head >.