linux 有些个命令比如 wget 会显示一个进度条。终于知道了一个办法弄出这个效果。其实也很简单:
<?php
for ($i = 0; $i <= 50; $i++) {
printf(“progress: [%-50s] %d%%r”, str_repeat(‘#’,$i), $i * 2);
usleep(1000 * 100);
}
echo “n”;
echo “Done.n”;
每次用 r 结尾就是了。n 是 new line,r 是 return 。也就是回到行首。
bash 版:
b=”
for ((i=0;$i<=100;i+=2))
do
printf “progress: [%-50s] %d%%r” $b $i
sleep 0.1
b+=’#’
done
echo
难道是版本的问题?
b+=’#’
这种写法,bash解释不了啊。
即使是
b=0
然后
b+=1
也还是解释不了。必须写成
let b+=1
或者
((b+=1))
其中
for ((i=0;$i<=100;i+=2))
可以写成
for ((i=0;i<=100;i+=2))
其中
b+=’#’
必须写成
b=$b’#’
谢振轩–谢霆锋的儿子
难得你更新一篇,居然还看不懂 ╮(╯_╰)╭
你名字跟一个人的只差一个字.
走过路过,记得要回贴
用了你那个变态的模板
top可没这么简单。像iptraf,vim更是复杂,有个叫ncurses的lib专门做这个事情的。
你要像top那样清屏,也不简单阿,clear不会清除屏幕的buffer,只是把整个屏幕往下拉而已。
还有类似top的命令,一直纳闷怎么做的
恩,解惑啊!