在控制台应用程序中,可以使用ascii转轮,如GUI等待游标,以指示工作正在完成。一个普通的旋转器循环使用以下4个字符:'|','/','-','\'

还有哪些循环动画序列可以为控制台应用程序增添趣味?


当前回答

我写了一个循环通过标准的\ | / -但左边的a _,并移动到下一个位置。它的目的是看起来好像有一系列的旋转器,在下一个开始之前,每个旋转器都掉到地板上。这样做的需要是我的程序反复尝试某件事并等待某个结果。我想要表示它每次尝试的次数,以及它在不占用大量屏幕空间(或计数)的情况下尝试了多少次。

在我写完之后,它看起来没有我想象的那么酷,但它达到了它的目的。

其他回答

如果你知道你在这个过程中走了多远,我喜欢百分比条。它看起来很漂亮,感觉很直观,很容易实现:

| 0%

|| 5%

|||||| 25%

||||||||||||||||||||| 100%

我见过

 echo -e "\033[41;1m$1 \033[0m"

在bash中基于块字符连续构建进度条。

我很高兴我不是唯一一个在这上面浪费时间的疯子!

以下是我最喜欢的(一些使用dos ascii码):

             classic: "/-\\|";
       bouncing ball: ".oOo";
better bouncing ball: [46, 111, 79, 248, 79, 111]; // (.oO°Oo.)

[180, 217, 193, 192, 195, 218, 194, 191];  // ┤ ┘ ┴ └ ├ ┌ ┬ ┐
[185, 188, 202, 200, 204, 201, 203, 187];  // double piped version of that 
[219, 220, 223];                           // block colours

由我的一个同事提供,这是C语言中一个漂亮的实现:

#define COW 2172
char* moo = "MO ";
void wrap() {
    int i,j;
    for(i=0;doSomething(i);i++)
        j=COW-moo[i&3],fputs(&j,stderr);
}

根据我的分析,它只能在至少有32位单词和ASCII字符集的小端计算机上工作。但它相当聪明。

试试这些

“+”,“x” 'v', '<', '^', '>'