#!/bin/sh
max_bayan_length=3;
bayan_wait_time=0.4
function bayan {
local i
echo -n '[:'
for i in `seq 1 $1`; do
echo -n \|
done
echo -n ':]'
z=$(($max_bayan_length-$1+4));
for i in `seq $z`; do
echo -n ' '
done
echo -ne "\r"
}
while `/bin/true`; do
for i in `seq 1 $max_bayan_length`; do
bayan $i;
sleep $bayan_wait_time
done
echo -ne "\r";
for i in `seq 1 $max_bayan_length`; do
bayan $(($max_bayan_length-$i))
sleep $bayan_wait_time
done
done
вот патч, вроде поэстетичнее баян смотрится, имхо :)
$ diff -u bayan.sh bayan.sh.orig
--- bayan.sh 2007-07-03 08:41:48.000000000 +0000
+++ bayan.sh.orig 2007-07-03 08:40:16.000000000 +0000
@@ -1,9 +1,7 @@
#!/bin/sh
-min_bayan_length=2;
-max_bayan_length=7;
-bayan_wait_time=0.2;
-
+max_bayan_length=3;
+bayan_wait_time=0.4
function bayan {
local i
echo -n '[:'
@@ -18,12 +16,12 @@
echo -ne "\r"
}
while `/bin/true`; do
- for i in `seq $((1+min_bayan_length)) $max_bayan_length`; do
+ for i in `seq 1 $max_bayan_length`; do
bayan $i;
sleep $bayan_wait_time
done
echo -ne "\r";
- for i in `seq 1 $((max_bayan_length-min_bayan_length))`; do
+ for i in `seq 1 $max_bayan_length`; do
bayan $(($max_bayan_length-$i))
sleep $bayan_wait_time
done
баян, как известно, в обратную сторону сжимается быстрее, вот патч относительно первого
--- bayan.sh.orig 2007-07-03 15:01:43.000000000 +0400
+++ bayan.sh 2007-07-03 15:53:54.000000000 +0400
@@ -1,7 +1,9 @@
#!/bin/sh
+min_bayan_length=2;
+max_bayan_length=7;
+bayan_wait_time1=0.2;
+bayan_wait_time2=0.1
-max_bayan_length=3;
-bayan_wait_time=0.4
function bayan {
local i
echo -n '[:'
@@ -16,14 +18,14 @@
echo -ne "\r"
}
while `/bin/true`; do
- for i in `seq 1 $max_bayan_length`; do
+ for i in `seq $((1+min_bayan_length)) $max_bayan_length`; do
bayan $i;
- sleep $bayan_wait_time
+ sleep $bayan_wait_time1
done
echo -ne "\r";
- for i in `seq 1 $max_bayan_length`; do
+ for i in `seq 1 $((max_bayan_length-min_bayan_length))`; do
bayan $(($max_bayan_length-$i))
- sleep $bayan_wait_time
+ sleep $bayan_wait_time2
done
done