
ビジーボックスでDSRを取得しようとしています(端末のサイズを取得するために)echo '\x1b[6n'
何も報告せずに\x1b[6n
。
答え1
2つの問題があります。
- 作る
echo
このオプションはエスケープシーケンスを処理するために必要です-e
。これは BusyBox シェルの機能ではなく、bash
他の実装にも当てはまります。 - から控除この問題ANSIコードはでなければなりません
\x1b[6n
。
また、末尾の改行を抑制することをお勧めします。要約すると、呼び出しは次のようにする必要があると思います。
echo -en "\x1b[6n"
BusyBoxの制限
BusyBoxの旧バージョン\e
エスケープ\x
シーケンスはサポートされていません。echo
;この場合はを使用する必要があります\033
。この問題は1.23.1で修正されたようです。
設定で次の設定をしてください。
- ビジボックス設定
- Busyboxライブラリの調整
- 端末でのカーソル位置の問合せ→有効
- Busyboxライブラリの調整
SSH/PuTTYの制限事項
SSH返された場所を飲み込む。リモート端末で回答を表示するには、次のものを使用できます。
echo -en "\e[6n"; cat
Ctrl + C次に押します。