progress 主要是用來監控 Coreutils 的程式執行狀態,可以查看詳細目前做的事情和執行比例。
- 例如:cp 一個資料夾,使用 progress 可以詳細看到目前正在 cp 哪個檔案,cp 完成的比例
progress:Linux 查看 cp, mv, dd 等的程式執行狀態
想要知道一些常用程式 cp, mv, sort.. 等等執行有沒有當掉?或看目前執行的狀態,來預測多久可以完成,可以使用 progress 來達成。
- 註:progress 並不是監控特定的 process,而是把所有 cp, mv.. 等等的 process 都列出來
官方網站
progress 安裝
- apt install progress
progress 監控哪些 Process 的狀態
- cp, mv, dd, tar, cat, rsync, grep, fgrep, egrep, cut, sort, md5sum, sha1sum, sha224sum, sha256sum, sha384sum, sha512sum, adb, gzip, gunzip, bzip2, bunzip2, xz, unxz, lzma, unlzma, 7z, 7za, zcat, bzcat, lzcat, split, gpg
所以只要 cp 一個比較大的檔案或目錄,就可以使用 progress 來監控,例如:
- cp -r /tmp/large-directory /tmp/backup
- watch progress -q # 或者直接執行 progress 即可
- [ 6576] cp /tmp/.git/objects/pack/pack-7d5d8a212e528edc8eb2964a6df3dc2dc8bb166f.pack 19.7% (4.6 MiB / 23.5 MiB)
- [ 6576] cp /tmp/.git/objects/pack/pack-7d5d8a212e528edc8eb2964a6df3dc2dc8bb166f.pack 46.2% (10.9 MiB / 23.5 MiB)
- [ 6576] cp /tmp/jq 0.0% (0 / 2.9 MiB)
progress 其它操作方式
- watch progress -wc firefox
- progress -c httpd
- cp bigfile newfile & progress -mp $!