前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Bash执行命令显示进度和结果

Bash执行命令显示进度和结果

原创
作者头像
程序员小涛
修改2021-02-20 11:09:18
1.9K0
修改2021-02-20 11:09:18
举报
文章被收录于专栏:涛的程序人生涛的程序人生

@TOC

Bash执行命令显示进度和结果

1.代码

代码语言:txt
复制
#!/bin/bash
#********************************************************
#Author: yangruitao
#Date:  2021-02-01
#FileName: cmd_check.sh
#********************************************************
#color.sh是我另一篇博客介绍的内容,感兴趣的朋友可以看看
. color.sh 

process() {
    pid=$1
    i=0
    while kill -0 $pid 2>/dev/null
    do
        i=$(((i+1) % 4))
        printf "."
        sleep 1
    done
}

cmd_with_process() {
    $1 &
    pid=$!
    process $pid &
    wait $pid
    if [ $? -eq 0 ]; then
        echo_green "[ok]"
    else
        echo_red "[fail]"
    fi
}

case $1 in
    check_cmd)
        shift
        cmd_with_process "$*"
    ;;
    *)
        echo_blue "Usage $0 [check_services|check_cmd]"
        echo_yellow "Forexample: $0 check_cmd sleep 10"
        cmd_with_process "sleep 10"
    ;;

esac

2.测试效果

test
test

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Bash执行命令显示进度和结果
    • 1.代码
      • 2.测试效果
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档