使用rm -rf LargeDirectory删除大目录可能需要很长时间才能完成,具体取决于目录的大小。
是否有可能获得状态更新或以某种方式监视此删除的进度以粗略估计命令在过程中的位置?
sim*_*ozz 31
从
man rm
Run Code Online (Sandbox Code Playgroud)
使用 -v 选项:
-v, --verbose
explain what is being done
Run Code Online (Sandbox Code Playgroud)
小智 18
我看到这个问题很老了。我想分享对我有用的东西,也许可以帮助其他人。
我使用pv命令行管道查看器获取进度条
这是命令
rm -rv DIR_OR_FILE_NAME | pv -l -s $( du -a DIR_OR_FILE_NAME | wc -l ) > /dev/null
如果您需要 root 权限来删除目录或文件,
sudo rm -rv DIR_OR_FILE_NAME | pv -l -s $( sudo du -a DIR_OR_FILE_NAME | wc -l ) > /dev/null
rm -rv:-r递归删除目录和文件。-v详细它列出了要删除的所有文件和目录。
pv -l -s:-l计算行数而不是字节数。-s设置要删除的总行数。
$( du -a <dir_or_file> | wc -l ):du -a返回指定目录中所有文件和目录的列表。wc -l返回 输出的行数du -a。
> /dev/null: 将输出发送rm -rv到任何地方。
您可以使用 Coreutils Progress Viewer( cv)查看任何当前正在运行的命令的进度。这不像发出一个单一的命令,但你可以看到它的进展。
我相信有人可以想出一个别名来使用命令运行它。它也适用于cp, mv, dd, tar, gzip/gunzip, cat, etc.. 有关它的更多详细信息,请访问