ubuntu bash 并行进程成功完成,但终端“冻结”

时间:2021-07-15 17:56:10

标签: bash find 7zip gnu-parallel

我有这个脚本将每个目录压缩成单独的文件:

#!/bin/bash

#compress every subfolder into separate files
find . -maxdepth 1 -type d -print0 | parallel -0 --eta 7z a -t7z -bso0 -bsp0 -m0=lzma2 -mx=9 -ms=on -mmt=on {}.7z {}

按预期工作,但最终终端停留在:

Computers / CPU cores / Max jobs to run
1:local / 8 / 8

Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete
ETA: 0s Left: 1 AVG: 0.51s  local:1/344/100%/0.5s

我必须ctrl+c退出并恢复终端。这是正常的还是我做错了什么?

1 个答案:

答案 0 :(得分:2)

正如@MarkSetchell 所评论的,问题是 find 也会打印当前目录。为了避免这种情况,我使用了 -mindepth 1 作为 find 的附加选项。

相关问题