有时候我们想在命令行执行一些耗时的命令,我们可以利用 symfony 提供的进度条相关的类,来输出一个进度条,显示当前的处理进度。

参考:http://symfony.com/doc/current/components/console/helpers/progressbar.html

<?phpnamespace App\Commands;use App\Console\Commands\BaseCommand;
use Illuminate\Contracts\Bus\SelfHandling;
use Symfony\Component\Console\Helper\ProgressBar;
use Symfony\Component\Console\Output\ConsoleOutput;class Test extends BaseCommand implements SelfHandling
{protected $signature = 'test1';/*** Execute the command.** @return void*/public function handle(){//$output = new ConsoleOutput();$progressBar = new ProgressBar($output, 1000);$progressBar->setFormat("   %elapsed:6s%/%estimated:-6s%   内存消耗: %memory:6s%\n%current%/%max% [%bar%] %percent:3s%%");foreach (range(1, 1000) as $_) {usleep(5000);$progressBar->advance();}$progressBar->finish();echo "\n";}
}

  

效果:

输出多个进度条:

$progressBar->start();
print "\n";
$progressBar->start();

中间需要打印一个换行符  

转载于:https://www.cnblogs.com/eleven24/p/9134303.html

laravel 命令行输出进度条相关推荐

  1. python控制命令行光标位置_python实现cli命令行的进度条光标滚动显示效果

    python实现cli命令行的进度条光标滚动显示效果, python如何实现cli命令行的光标滚动效果?我们在制作cli工具的时候,会遇到如果比较长时间执行的任务,可能需要类似progress进度的功 ...

  2. linux mv 递归拷贝,奇技淫巧 - 给Linux中的cp和mv命令中添加进度条的高级拷贝

    GNU cp和GNU mv命令用于在GNU/Linux操作系统中复制和移动文件和目录.这两个命令缺少的一个特性是它们不显示任何进度条.如果复制一个大文件或目录,您就不知道完成复制过程需要多长时间,也不 ...

  3. 给Linux中的cp和mv命令中添加进度条的高级拷贝

    GNU cp和GNU mv命令用于在GNU/Linux操作系统中复制和移动文件和目录.这两个命令缺少的一个特性是它们不显示任何进度条.如果复制一个大文件或目录,您就不知道完成复制过程需要多长时间,也不 ...

  4. laravel auth(api)-attempt 返回false_3分钟短文:Laravel命令行参数和可选项分不清?怎么可能...

    引言 上一期我们介绍了laravel命令行的创建,以及使用方法.使用了一个没有数据输入和输出的测试用例. 本期我们来介绍带有命令行参数输入,和命令行输出信息的代码用法. 代码时间 声明命令行位置参数, ...

  5. python控制台进度条_python在控制台输出进度条的方法

    本文实例讲述了python在控制台输出进度条的方法.分享给大家供大家参考.具体实现方法如下: 进度条效果如下所示: |#############################------------ ...

  6. 让 dotnet 命令行输出作为英文的方法

    在我的设备上,默认的 dotnet 命令行都是输出中文,如我输入 dotnet build 命令,里面的错误提示也是中文.在我想要和国外的小伙伴报坑时,如果里面有很多中文,我觉得他将会看不懂,从而不理 ...

  7. vs2022 C#使用Console.WriteLine调试没有命令行输出

    问题: visual studio 2022 的debug模式下,Console.WriteLine调试没有命令行输出应该打印出来的信息. 解决办法: 这个问题的原因是VS2017开始已经不再使用Ho ...

  8. 调试秘笈--MessageBox()格式化输出,windows程序支持命令行输出

    这是MessageBox的全家福: 格式化输出: int BoxPrintf( TCHAR * szBuffer, const TCHAR * szFormat, ...) {int iReturn ...

  9. linux :vim 实现命令行下输出进度条

    1.  进度条原理: 进度条的的动态增长是利用人的视觉短暂停留效果的,不断从输出缓冲区刷新出相同的内容,在肉眼看来进度条在不断的增长. 在显示器上先输出[#                       ...

最新文章

  1. 百度大脑发挥AI“头雁效应” 王海峰:在AI时代共同推动社会智能化升级
  2. 作用c语言算圆的周长,C语言入门级代码 输入圆的半径求出圆的周长及面积
  3. mdkstc系列器件支持包下载_Find X2系列 Android 11 Beta1 测试版发布
  4. 第四篇: python函数续
  5. php判断当前时间是否跨月,判断日期是否能跨月查询的js代码_javascript技巧
  6. 3 万字 51 张图教你 CPU、内存、操作系统硬核知识!
  7. linux代码实现进程监控,linux进程监控shell脚本代码
  8. Java机器学习开发库
  9. 梦之翼网络LAMP技术博客正式成立!
  10. 新东方 词根词缀 excel_14张图搞定高中英语词汇常见词缀词根!
  11. SQL Server 2017 安装AdventureWorks示例数据库出现的问题
  12. Gröbner基方法入门第II部分:Gröbner基和Buchberger算法
  13. retinaface代码讲解_Pytorch-RetinaFace 详解
  14. [HDU - 2063] 过山车(二分图)
  15. select 之分组查询
  16. web前端期末大作业:个人简历
  17. iOS Quartz2D 渐变图形 CGGradient CGShading
  18. 1到3岁宝宝如何选择玩具
  19. 以强大数字孪生技术为基础底座,进一步完善智慧安防保障体系
  20. Python简单理解1-10阶乘和运算

热门文章

  1. Java List接口概述
  2. CentOS7 Mysql5.7.22 源码安装
  3. 关于完全删除电脑上多余的tomcat服务器的解决办法
  4. 拥抱 Android Studio 之五:Gradle 插件开发
  5. MVVMLight绑定数据
  6. Hibernate与MyBatis区别
  7. xheditor富文本框 存值与展示问题
  8. 压缩和解压文件:tar gzip bzip2 compress(转)
  9. 设计模式之模板方法和策略模式的区别(一)
  10. 打造自己的数据访问层(三)