如何将光标移回终端中的一个位置?

Zag*_*rax 3 perl cursor

我想要显示一个交替角色的动画/,|和\.

我怎么总是写在终端的同一个小区?我需要将光标移回一个位置.

ike*_*ami 5

大多数终端将chr(8)通过向后移动光标来处理退格().关键是禁用缓冲.

use Time::HiRes qw( sleep );

$| = 1;  # Disable buffering on STDOUT.

my $BACKSPACE = chr(0x08);

my @seq = qw( | / - \ );
for (;;) {
   print $seq[0];
   push @seq, shift @seq;
   sleep 0.200;
   print $BACKSPACE;
}

print "$BACKSPACE $BACKSPACE";
Run Code Online (Sandbox Code Playgroud)

  • 孩子们不在家做这个!`print(chr 0x08,(qw(\ |/ - ))[$ i ++%4])&& select'','','',0.2,而++ $ |` (5认同)