Ubuntu 20.04 shell Pipe 執行進度顯示

在 Linux shell 時常會使用 |(pipe) 將命列指令串聯起來一起執行, 但遇到其中一個指令可能需要花很多時間, 就可能會感覺命令列卡住不動的狀況, 所以可以透過 pv (pipeline viewer) 來了解執行的進度.

  • sudo apt update
    sudo apt install pv

  • Exp.

    sudo gunzip -c "/home/$DIR_USER/packages/docker-images.tgz" | sudo docker load

  • 以上了範例因為 docker-images.tgz 約 4G 大小, 所以進行 gunzip 過程約 5-10 分鐘, 這過程將不會有任何訊息
  • 加上了 pv 後的語法如下:

    sudo pv "/home/rkeuser/packages/docker-images.tgz" |sudo  gunzip -c | sudo docker load

  • 執行過程就會出現以下的訊息
  • 多出了執行過程已花的時間、處理進度列以及預估還有多少時間才完成這樣的處理過程進度資訊
  • tech/sh_pipe_viewer.txt
  • 上一次變更: 2021/05/19 15:26
  • jonathan