Ubuntu 怎樣查看進度,複製文件有沒有卡似
在这个sudo cp -r命令,在终端里默认是没有进度条的,所以看起来就像 “卡住了”,其实它正在后台复制。下面给你几个办法,实时看它有没有在跑、复制了多少。
一、先确认命令是不是还在运行
1. 看终端有没有回到命令提示符
- 如果还在显示[sudo] ubunto 的密码:,说明你刚输入密码,命令还没开始执行,或者正在运行中。
- 如果已经出现了新的ubunto@ubunto-desktop:~$提示符,说明复制已经结束了(成功或失败都结束了)。
2. 用ps命令看进程
在新打开一个终端窗口(注意:不能在正在执行cp的那个终端里操作,会打断它),输入:
bash
运行
ps aux | grep cp
如果能看到一条包含cp -r的进程,说明复制正在运行。
二、实时看复制进度(推荐)
方法 1:用rsync替代cp(带进度条)
下次复制时,直接用下面这条命令,它会显示实时进度:
bash
运行
sudo rsync -av --progress /media/ubunto/数据/Switch/games/saierdawangguozhilei/wgzl01 /media/ubunto/SHARE1/
- --progress:会显示每个文件的复制进度和速度。
- --av:保留权限、时间戳,和cp -r效果一样,更稳定。
方法 2:给正在运行的cp加进度条(如果已经在复制了)
-
先在新终端里找到cp的进程 ID(PID):
bash运行
pgrep -a cp
输出类似12345 cp -r ...,其中12345就是 PID。 -
安装progress工具:
bash运行
sudo apt update && sudo apt install progress -y
-
查看cp的实时进度:
bash运行
progress -p 12345
把12345换成你刚才查到的 PID,就能看到当前复制了多少、速度多少。
三、看目标文件夹的大小变化(最直观)
在新终端里,执行下面的命令,看目标文件夹的大小是不是在变大:
bash
运行
watch -n 2 du -sh /media/ubunto/SHARE1/wgzl01
- 它会每 2 秒刷新一次,显示文件夹大小。如果数字一直在涨,说明正在复制。
- 复制完成后,大小就会稳定不动了。
四、补充:为什么cp不显示进度?
cp是 Linux 最基础的复制命令,默认没有进度条功能,所以大文件 / 文件夹复制时,终端会 “卡住” 没反应。用rsync是更方便的选择,或者搭配progress工具查看进度。
你现在的复制命令还在跑吗?如果已经卡住很久了,我可以教你怎么安全地终止它,然后换成带进度条的rsync命令重新复制。