当前位置: 首页 > 编程日记 > 正文

linux shell显示下载进度,shell脚本测试下载速度

在linux下用shell来测试下载速度,很实用的shell代码。

代码:

复制代码 代码示例:

#!/bin/bash

#date:20140210

# edit: www.jquerycn.cn

#used for test server download speed

r_host="188.18.28.19"

r_dir="/home/test0208/tmp"

r_file="$r_dir/ddfile2m"

l_dir="/home/yangjuying/tmp"

l_file="$l_dir/ddfile2m"

l_log="$l_dir/182.18.28.19-download.log"

echo "----------$(date +%y%m%d-%h%m%s)----------" >>$l_log

start_t="$(date +%s)"

scp -p22 -o connecttimeout=10 -o gssapiauthentication=no test0208@$r_host:$r_file $l_file >>$l_log 2>&1

rc="$?"

if [ "$rc" -eq 0 ];then

stop_t="$(date +%s)"

file_stat="$(stat $l_file)"

file_ctime="$(echo "$file_stat" | awk -f "[ .]" 'fnr==5{print $2,$3}' | sed 's/[- :]/ /g')"

file_ct="$(awk -v t="$file_ctime" 'begin{print mktime(t)}')"

file_size="$(du -sm $l_file | cut -f1)"

rm "$l_file"

else

stop_t=""

fi

if [ -n "$stop_t" ];then

connect_t=$(($file_ct-$start_t))

transfer_t=$(($stop_t-$file_ct))

all_t=$(($stop_t-$start_t))

speed="$(echo "scale=3;$file_size/$transfer_t" | bc)"

echo "size:${file_size}mb, all_time:$all_t, connect_time:$connect_t, transfer_time:$transfer_t, speed:${speed}mb/s" >>$l_log

else

echo "scp error!" >>$l_log

fi

相关文章:

openStack调试

openStack调试 posted on 2016-04-23 22:07 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/ruiy/p/5425823.html

快应用开发常见问题以及解决方案【持续更新】

接触快应用也有一段时间了,踩过了大大小小的坑,让我活到了今天。准备在此立贴持续更新,记录遇到的问题以及解决方案,造福大众。css 方面 1、文字竖排不支持 目前官方还不支持writing-mode,除了等待官方支持这个api以外…

Java字节码研究

关于怎么查看字节码的五种方法参考本人另一篇文章《Java以及IDEA下查看字节码的五种方法》 1.String和常连池 先上代码: public class TestApp {public static void main(String[] args) {String s1 "abc";String s2 new String("abc");St…

在c语言中逗号的作用,关于c语言中的逗号运算符???

等下。。答错了。。还需要理解一下神马是逗号表达式。。我前面说的和uuyyhhjj与delta_charlie的意思一样,但其实我们都搞错了。你可以自己把我们的例子都运行一下,看看是不是这样。下面我感觉应该是我正确的理解。逗号表达式是所有运算符中优先级最低的&…

2018-2019-1 20165206 《信息安全系统设计基础》第4周学习总结

- 2018-2019-1 20165206 《信息安全系统设计基础》第4周学习总结 - 教材学习内容总结 程序员可见的状态:Y86-64程序中的每条指令都会读取或修改处理器状态的某些部分,这称为程序员可见状态。包括:程序寄存器、条件码、程序状态、程序计数器和…

PHP——图片上传

图片上传 Index.php文件代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Document</title> </head> <body><form action"upload2.php" method"p…

IDEA实用插件和技巧

《解决lambda expressions are not supported at this language level的问题》 《Intellij Idea 代码格式化/保存时自动格式化》 一、安装google-java-format preferences -> plugins -> Browse repositories… 搜索google-java-format 还有阿里的代码规范插件也不…

c语言将字母与数字分开存放,2017年计算机二级《C语言》考前提分试题及答案9...

二、程序填空题(共18分)、下列给定程序中&#xff0c;函数flm的功能是&#xff1a;将s所指字符串中的所有数字字符移到所有非数字字符之后&#xff0c;并保持数字字符串和非数字字符串原有的次序。例如&#xff0c;s所指的字符串为“def35adh3kjsdt7”&#xff0c;执行后结果为…

学术青年如何克服拖延症——5条技巧助你前进

雷锋网 AI 科技评论按&#xff1a;「我准备好了就开始」&#xff08;或者说「拖延症」&#xff09;&#xff0c;以及「即便动起手来也觉得举步维艰」大概是每个现代人都逃不过的日常感受&#xff0c;不管是学习、在企业中工作&#xff0c;还是从事学术研究。我们可能都看过许多…

JDK源码研究Jstack,JMap,threaddump,dumpheap的原理

JDK最新bug和任务领取&#xff1a;https://bugs.openjdk.java.net/projects/JDK/issues 参加OpenJDK社区&#xff1a;https://bugs.openjdk.java.net/projects/JDK/issues openjdk源码地址&#xff1a; https://jdk.java.net/java-se-ri/8 https://download.java.net/openj…

C语言中regex_error,为什么这个C 11 std :: regex示例抛出一个regex_error异常?

参见英文答案 >Is gcc 4.8 or earlier buggy about regular expressions? 2尝试学习如何在C 11中使用新的std :: regex.但是我尝试的例子是抛出一个我不明白的regex_error异常.这是我的示例代码&#xff1a;#include #include int main…

如何删除mac通用二进制文件

通用二进制文件是什么&#xff1f; 计算机文件基本上分为二种&#xff1a;二进制文件和 ASCII&#xff08;也称纯文本文件&#xff09;&#xff0c;图形文件及文字处理程序等计算机程序都属于二进制文件。这些文件含有特殊的格式及计算机代码。ASCII 则是可以用任何文字处理程序…

约瑟夫环 猴子选大王

<? /*** 猴子选大王&#xff1a;一群猴子排成一圈&#xff0c;按1,2,…,n依次编号。* 然后从第1只开始数&#xff0c;数到第m只,把它踢出圈&#xff0c;从它后面再开始数&#xff0c;再数到第m只&#xff0c;在把它踢出去…&#xff0c;* 如此不停的进行下去&#xff0c;直…

Java使用字节码和汇编语言同步分析volatile,synchronized的底层实现

关于怎么查看字节码的五种方法参考本人另一篇文章《Java以及IDEA下查看字节码的五种方法》 查看汇编语言汇编码 说要看汇编还是很有必要的&#xff0c;因为有些地方比如加锁其实还是通过汇编实现的&#xff0c;只看字节码不能看出底层实现。 其实就是利用使用hsdis与jitwat…

云计算读书笔记(五)

Hadoop&#xff1a;Google云计算的开源实现 Hadoop是Apache开源组织的一个分布式计算机框架&#xff0c;可以在大量廉价的硬件设备组成的集群上运行应用程序&#xff0c;为应用程序提供一组稳定可靠的接口&#xff0c;旨在构建一个具有高可靠性和良好扩展性的分布式系统。 Hado…

自动跟随小车c语言,基于OpenCV的智能小车运动轨迹跟踪方法研究

摘要&#xff1a;随着人工智能技术的快速发展,智能小车开发受到越来越多研究者的关注,也已经成为一个重要的研究方向,而解决智能小车在路径规划中行驶的运动故障重要手段是对其进行的视频监控,但是智能小车的视频监控只能看到智能小车的行进状况而不进行相对应的处理,所以对智能…

JXJJOI2018_T1_market

题目描述 某天Lemon去超市买柠檬&#xff0c;他发现货架上有N个柠檬&#xff0c;每个柠檬都有一个重量Wi和价格Ci。 Lemon身上只带了S元钱&#xff0c;因此他想要买一个价格不超过S的柠檬回家&#xff0c;另外&#xff0c;他希望他买的那个柠檬的性价比尽量高。 性价比的定义是…

更好的Java虚拟机Zing: 更好的性能,无停顿,更快的启动

Zing虚拟机文档Understanding Java Garbage Collection(了解Java垃圾收集) 首先说明这个Zing是收费的&#xff0c;但是他也是优秀的&#xff0c;我觉得我们可以研究下他的一些思想对于怎么提高JVM&#xff0c;以及目前的JVM有什么缺陷是非常有帮助的。 中文版简介&#xff1a;…

c语言将水仙花数放入一维数组a中,全国计算机等级考试C语言考试程序设计题(13)...

在考生目录下&#xff0c;要求程序PROG.C的功能是&#xff1a;将所有的水仙花数保存到一维数组a中。(所谓水仙花数是指一个三位数&#xff0c;其各位数字立方和等于该数本身。例如&#xff1a;1531*1*15*5*53*3*3)#includevoid main(){void NONO( );//函数声明int a[10]{0},i…

[j2me]类似于OperaMini二级菜单界面演练[1]

拜朋友所赐&#xff0c;今日开始尝试如何绘制类似于Opera Mini的二级菜单&#xff0c;如下图所示&#xff1a;我自己的练习&#xff0c;还很幼稚&#xff0c;姑且记录如下&#xff1a;点击左软键&#xff0c;即可选中界面左下角的“选择”命令&#xff0c;二级菜单旋即弹出&…

宜人贷YEP技术、数据沉淀背后:金融科技迎来开放赋能时代

日前&#xff0c;“IFPI第十届金融科技决策者大会2018”在上海举办&#xff0c;宜人贷不仅入选了本届大会的“中国Fintech独角兽榜Top50”&#xff0c;推出的YEP共享平台也受到了众多金融机构的关注。从头部平台宜人贷全面开放金融科技能力来看&#xff0c;互联网金融行业历经混…

Redis源码和java jdk源码中hashcode的不同实现

一.redis实际上是使用了siphash 这个比较简单&#xff0c;我说的简单是指redis代码比较少不像jdk一样调用C代码调用栈非常深。 先看这个rehashing.c 主要就是dictKeyHash函数&#xff0c;需要调用dict.h头文件中定义的dictGenHashFunction #include "redis.h" #i…

android 7.0 短信监控,Android 7.0 监听网络变化的示例代码

Android7.0前&#xff0c;Android系统前网络切换时&#xff0c;会发广播&#xff0c;业务只要监听广播即可。public class NetChangeReceiver extends BroadcastReceiver {private static final String ANDROID_NET_CHANGE_ACTION "android.net.conn.CONNECTIVITY_CHANGE…

Mysql列类型-数值型

2019独角兽企业重金招聘Python工程师标准>>> 一、整数型&#xff1a; 1、取值范围&#xff1a; tinyint smallint mediumint int bigint 分别占用1、2、3、4、8个字节的存储空间 如&#xff1a;tinyint占用1个字节空间&#xff0c;它的取值范围&…

2018.10.22-dtoi1443奶牛逃亡(cowrun)

题目描述&#xff1a; Farmer John忘记修复他农场篱笆上的一个大洞&#xff0c;以至于篱笆围着的N&#xff08;1< N <1,000&#xff09;只奶牛从大洞中逃脱出来&#xff0c;并在农场里横冲直撞。每头在篱笆外的奶牛每分钟都将给他带来一美元的损失。FJ必须遍及每头奶牛、…

[转载]Linux 线程实现机制分析

自从多线程编程的概念出现在 Linux 中以来&#xff0c;Linux 多线应用的发展总是与两个问题脱不开干系&#xff1a;兼容性、效率。本文从线程模型入手&#xff0c;通过分析目前 Linux 平台上最流行的 LinuxThreads 线程库的实现及其不足&#xff0c;描述了 Linux 社区是如何看待…

Java12和Jdk12安装以及OpenJdk12源码

文档&#xff1a; JDK 12文档:https://docs.oracle.com/en/java/javase/12/ 下载&#xff1a; OracleJDK12下载&#xff1a;https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html csdn上我下好的&#xff0c;速度较快&#xff1a;https…

android 获取视频大小,Android 获取视频缩略图(获取视频每帧数据)的优化方案

速度对比左边的图片是通过方式1右边的图片是通过方式2speed.gif速度优化&#xff0c;效果拔群。在缩小2倍的Bitmap输出情况下使用MediaMetadataRetriever 抽帧的速度&#xff0c;每帧稳定在 300ms左右。使用MediaCodecImageReader 第一次抽帧。大概是200ms ,后续每帧则是50ms左…

Msql的DML、DDL、DCL的区别

DML(data manipulation language)&#xff1a;它们是SELECT、UPDATE、INSERT、DELETE&#xff0c;这4条命令是用来对数据库里的数据进行操作的语言 DDL(data definition language)&#xff1a;主要的命令有CREATE、ALTER、DROP等&#xff0c;DDL主要是用在定义或改变表(TABLE)的…