eco {Z..A}; fora {Z..A};Por quê?

eco {Z..A}; fora {Z..A};Por quê?

Sou um novo usuário do Ubuntu. Estou lendo este livro "A linha de comando do Linux: uma introdução completa" e praticando o código. Isso é divertido, mas tenho problemas no Capítulo 8:

➜  ~ echo {1..10}
1 2 3 4 5 6 7 8 9 10
➜  ~ echo {z..a}
{z..a}
➜  ~ echo {Z..A}
{Z..A}
➜  ~ echo {a..z}
{a..z}
➜  ~ 

Não consigo obter uma série de letras. Por que? Como faço para corrigir isso? Minha concha é oh-my-zsh.

Responder1

Isto é umksh(efesta) recurso e pode não estar emseucasca, por exemplo,traço(shell padrão usado no Debian/Ubuntu).

Para ver a diferença, tente

bash -c "echo {a..z}"
dash -c "echo {a..z}"

O padrão /bin/shdo Debian aponta para dash. Mas se você estiver executando em um shell bash, verá as sequências expandidas conforme o esperado. Os scripts iniciais #!/bin/shusarão dash.

No meu Debian 7, zshtambém não expande a sequência. (Eu verifiquei ksh, bash, dash e zsh).

informação relacionada