Eu vejo dois problemas:
- Para tornar
echo
a lidar com sequências de escape, é necessário adicionar a opção% código%. Esta não é uma especialidade do shell BusyBox, também se aplica a-e
e outras implementações. - Deduzindo essa pergunta SO o código ANSI deve ser
bash
.
Além disso, pode ser uma boa ideia suprimir a nova linha de acabamento. Juntando tudo, acho que a ligação deve ser a seguinte:
echo -en "\x1b[6n"
Limitações do BusyBox
Versões mais antigas do BusyBox não suportam \x1b[6n
e \e
sequências de escape em \x
; Nesse caso, echo
deve ser usado. Isto parece ser corrigido em 1.23.1.
Certifique-se de definir o seguinte na configuração:
-
Configurações do Busybox
-
Ajuste da Biblioteca Busybox
- Consulta da posição do cursor no terminal → ativada
-
Ajuste da Biblioteca Busybox
Limitações SSH / PuTTY
SSH engole a posição retornada . Para ver a resposta no seu terminal remoto, você pode usar
echo -en "\e[6n"; cat
e pressione Ctrl + C depois disso.