如果我跑
cp file1 file2
我希望能够跟踪它的进度。有没有什么命令可以实现这一点?
rsync --progress
有这个,但是是否有通用的,可用于“任何”命令的东西?
答案1
您可以使用它pv
来查看任何可以通过管道传输数据的命令的进度。
例如http://www.catonmat.net/blog/unix-utilities-pipe-viewer/解释一下。但是,这对 cp 不起作用,因为它不通过管道运行。
除此之外,据我所知没有通用机制。这很困难,因为“进度”对不同的命令可能有不同的含义。
顺便说一句,cp
有一个选项-v
可以列出复制的文件,可以让您大致了解其进度。
编辑:
虽然它可能不会直接回答您的问题:您也可以使用图形文件管理器。大多数图形文件管理器在复制/移动文件时都会提供一个很好的进度条(例如 KDE 的 konqueror 就是这样的)。
答案2
尝试附加--verbose
到您感兴趣的命令,这通常会产生有关进度的更多信息。
答案3
(也许不是你想要的,因为它不适用于任何命令,但)来获取进度表cp,我有时会滥用SCP:
scp localhost:/path/to/source_file /path/to/destination
您将需要在源或目标上使用“localhost:”前缀,以便SCP不会回到标准cp。