なぜ `echo abc^H` は `ab` だけを印刷しないのですか?

なぜ `echo abc^H` は `ab` だけを印刷しないのですか?

覚えていますが、^H意味はBackspaceCTRL+Vを押して作成しますCTRL+H

したがって、^H最後の文字はこの位置をBackspace押すのと同じ効果を持ち、削除する必要がありますBackspace

代わりに出力がecho abc^Hまだ存在するのはなぜですか?abcab

ベストアンサー1

backspaceカーソルを後ろに移動します。

backspace(またはdelete構成に応じて任意の文字)次の場合にのみ、最後に印刷された文字を削除します。

  • echo例のように、コマンド出力ではなくキーボードで入力されます。
  • エンドデバイスが調理モードになっています(通常の状況)。

例からその文字を削除するには、c次のように別の文字で上書きする必要があります。

echo "abc^H "

おすすめ記事