实现本机拷贝带进度的方法
实现本机拷贝带进度的方法:
方法一:scp命令(推荐)
# scp -r /mnt root@127.0.0.1:/home (拷贝文件夹要加参数 -r,拷贝文件不需要)
(显示拷贝速度、剩余时间、已拷贝大小、进度%,不显示总大小,一般速度为10M/s)
方法二:rsync命令
# rsync -av --progress /mnt /home
(显示拷贝速度、剩余时间、已拷贝大小、进度%,不显示总大小,一般速度为300kb/s)
方法三:coreutils工具
让cp显示进度的工具,拷贝文件夹也是可以的
$ wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.4.tar.gz
$ tar xvzf coreutils-8.4.tar.gz
$ cd coreutils-8.4/
$ wget http://beatex.org/web/advcopy/advcpmv-0.3-8.4.patch
$ patch -p1 -i advcpmv-0.3-8.4.patch
$ ./configure
$ make
$ sudo cp src/cp /usr/bin/cp
$ sudo cp src/mv /usr/bin/mv
用的时候要切换到root模式才行
# cp -r -g /root /home/
(显示总大小、速度、剩余时间、不显示已拷贝大小,一般速度200kb/s)
方法四:cp.sh脚本
(显示速度、进度、不显示总大小、剩余时间、已拷贝大小,一般速度300kb-1M/s不等)
# vi cp.sh
#!/bin/bash
trap 'exit_fun' 2
usage(){
echo "Usage: `basename $0` \"src file\" \"dst file\""
exit 1
}
exit_fun(){
echo -e "\033[?25h"
kill -9 $(ps -ef|awk '/ [c]p /{print $2}') &>/dev/null
exit 1
}
[ "$#" -ne "2" ] && usage
[ -d "$2" ] && k=${2%%/}/`basename $1` || k=$2
fromsize=`ls -s $1|cut -d" " -f1`
cp $1 $k &
start=`date +%s`
sleep 0.2
echo -ne "\033[?25l"
while :;do
tosize=`ls -s $k|cut -d" " -f1`
x=`echo "$tosize $fromsize"|awk '{print int($1*100/$2)}'`
[ $x -eq 99 ] && x=100
echo -n "["
for((i=0;i<x;i=$i+2));do echo -n "=";done
echo -n ">"
for((j=i;j<=99;j=$j+2));do echo -n " ";done
now=$[`date +%s` - $start]
[ $now -eq 0 ] && now=1
avg=$[$tosize/$now]
printf "] %4s%% %4sKb/s" $i $avg
[ $x -ge 100 ] && break
sleep 0.1
echo -ne "\r"
done
echo -e "\033[?25h"
:wq
# chmod +x cp.sh
示例:
# ./cp.sh /mnt/a.tar.gz /home
注:
不能拷贝文件夹,只能拷贝单个文件
转载于:https://blog.51cto.com/yangzhiming/1033043
实现本机拷贝带进度的方法相关推荐
- linux拷贝文件夹时获取进度,实现本机拷贝显示进度的方法
实现本机拷贝显示进度的方法: 方法一:scp命令(推荐) # scp -r /mntroot@127.0.0.1:/home(拷贝文件夹要加参数 -r,拷贝文件不需要) (显示拷贝速度.剩余时间.已拷 ...
- [整理] C#调用SQLDMO.DLL时间数据库备份 / 还原。 (香神无涯) // C#实现SQLSERVER2000数据库备份还原的两种方法 (带进度条)...
/// <summary> /// 通过调用MSSQL的SQLDMO.DLL文件来实现备份数据库 /// 1.首先在在项目中引用SQLDMO.DLL文件. /// 2.在引用中的SQLDM ...
- 带进度条的x5WebView
我们在使用webview加载网页的时候都希望顶部都有个进度条显示加载进度,由于在Android 4.4以下版本的Webview使用的是WebKit内核,,而在Android 4.4及其以上版本使用的是 ...
- DayZ服务器一机多服的设置方法教程
DayZ服务器一机多服的设置方法教程 我是艾西上期我们讲到DAYZ游戏架设且可以正常进入游戏以及设置 今天跟大家分享DAYAZ服务器一机多服的设置方法教程 直接上干活看了上一期的小伙伴可以直接跟着步骤 ...
- Android更新带进度条的通知栏
在网上查询了下,Android版本号更新通知栏带进度条,醉了,基本都是复制过来.有的代码不全,连源代码下载都没有,有下载也须要积分.还不能用.真黑心啊!! 之前自己也写过自己定义通知栏Notifica ...
- 详解死机的原因和预防方法
详解死机的原因和预防方法 详解死机的原因和预防方法 如今的计算机已经接近全面普及的程度了,它给人们在工作和学习上提供了极大的方便,不过,计算机的"死机"对于普通的计算机用户来说,却 ...
- 用MediaPlayer做个带进度条可后台的音乐播放器
传送到github看源码 下载apk试用 密码:rukn 前言 想在天朝听音乐还是有些难度的, 一般来说, 两三个app还是要的. 那何不尝试自己做个手机播放器, 听个爽呢?!今天就带大家先做个简单的 ...
- Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)
转载请注明地址:http://blog.csdn.net/xiaanming/article/details/10298163 很多的时候,系统自带的View满足不了我们功能的需求,那么我们就需要自己 ...
- 【MFC】带进度条的状态栏
00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 状态栏多用于显示程序执 ...
最新文章
- linux设置ulimit值永久生效
- 《黑客秘笈——渗透测试实用指南(第2版)》目录—导读
- mysql对其他IP授权访问
- Libra白皮书解读
- python中sorted_Python中sorted()方法的用法
- 华菱重卡仪表指示说明_新一代创虎重卡登场!LNG车型将配玉柴燃气发动机
- 上传文件插件(plupload)
- 2019中国(黄石)工业互联网创新发展大会将于11月召开
- 关于栈的链式存储结构
- php服务器错误日志在哪里看,PHP取服务器错误日志
- [转载] python在内网服务器安装第三方库
- Postdoctoral Position
- 管理新语:新员工进来,竟然连起码的技能培训都没有
- 智能机器人比巴和智伴哪个好_毛爸聊玩具:金鹰卡通出品的麦咭机器人,白送我都不要...
- 【学习笔记】C51 keil v4 流水灯简单代码的编写
- B站下载视频之you-get的使用
- 使用paddlepaddle进行手写数字识别
- esp32➡遥控篇➡turtlesim➡mobot➡turtlebot3
- 交换机配置--进入web页面
- Python Curses
热门文章
- [js高手之路]原型对象(prototype)与原型链相关属性与方法详解
- 数据库实现,以及工厂方法模式实现
- SubSonic中RecordBaseT.Load(IDataReader dataReader)与LoadAndCloseReader(IDataReader dataReader)的使用区别...
- QT消息/事件循环机制与多线程的关系
- WindowsAPI-Findwindow函数和FindWindowEx用法
- c#中一个进程启动另一个进程并传递参数
- Qt--基础图形绘制
- 我总结的几种简单的调用Com组件的方法
- mysql 数据日志分析_基于mysql数据库的日志分析系统
- ‘ping‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。