ant | awk -F'[ :]' '/:80/ {++ip[$6]} END {for (i in ip) print i, ip[i]}' | sort -rn) # 输出连接到本地 80 端口的前十个...31m连接到本地 80 端口的 IP 地址及连接数:\e[0m\n${connect_80_ip}" echo -e "\e[31m前十个连接到本地 80 端口的 IP 地址及连接数:\e[0m\n${...top10_connect_80_ip}" 2、文件不安全的权限检查 # 查找系统中任何用户都有写权限的文件(目录),并存放到/tmp/anynone_write.txt find / -type f...-perm -o=w -o -perm -g=w -o -perm -o=w -exec echo {} \; > /tmp/anynone_write.txt # 查找系统中所有含 's' 位权限的程序.../bin/bash # 获取物理内存使用量 mem_used=$(free -m | awk '/^Mem/{print $3}') # 获取物理内存总量 mem_total=$(free -m |
/bin/bash demoFun(){ echo "这是我的第一个 shell 函数!".../bin/bash funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算..."...输入的两个数字之和为 3 ! 函数返回值在调用该函数后通过 $? 来获得。 注意: 所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。...调用函数仅使用其函数名即可。 函数参数 在Shell中,调用函数时可以向其传递参数。 在函数体内部,通过 n 的形式来获取参数的值,例如,1表示第一个参数, #!...注意,10 不能获取第十个参数,获取第十个参数需要{10}。 当n>=10时,需要使用${n}来获取参数。 另外,还有几个特殊字符用来处理参数: ?
/bin/bash my_array=(A B "C" D) # 我们可以使用功能下标来定义数组 array_name[0]=value0 array_name[1]=value1 array_name...来获得. # 注意: 所有函数在使用前必须定义,这意味着必须将函数放在脚本开始部分,直至shell解释器发现他时才能使用 # 调用函数仅使用函数名即可 函数参数 在Shell中,调用函数时可以向其传递参数...注意 # $10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。...后台运行的最后一个进程的ID号 $@ 与$*相同,但是使用时加引号,并在引号中返回每个参数。 $- 显示Shell使用的当前选项,与set命令功能相同。 $? 显示最后命令的退出状态。.../bin/bash url="http://www.baidu.com" test2.sh代码如下 #!/bin/bash #使用 . 号来引用test1.sh 文件 . .
开头的行就是注释,会被解释器忽略,但是sh里面没有多行注释,只能每行加一个# 从Ubuntu 6.10开始,默认使用dash,需要手动执行命令将dash改为bash, 至于bash和dash的区别,详见...作为解释器参数 /bin/sh test.sh /bin/php test.php Shell变量 定义变量的时,变量前不加美元符号,变量名和等号之间不能有空格 name="小明" 使用语句给变量赋值...for file in `ls /etc` for file in $(ls /etc) 使用变量 使用一个定义过的变量,只要在变量名前加 $ 符号即可 第二次给变量赋值的时候也不能加 $ 变量名外加上花括号能够帮助识别器识别变量的边界...echo "第十个参数为 $10 !" echo "第十个参数为 ${10} !" echo "第十一个参数为 ${11} !" echo "参数总数有 $# 个!".../bin/bash # author:菜鸟教程 # url:www.runoob.com #使用 . 号来引用test1.sh 文件 . .
/bin/bash demoFun(){ echo "这是我的第一个 shell 函数!".../bin/bash funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算..."...return $(($aNum+$anotherNum)) } funWithReturn echo "输入的两个数字之和为 $? !" 结果是: 注意:所有函数在使用前必须定义。...echo "第十个参数为 $10 !" echo "第十个参数为 ${10} !" echo "第十一个参数为 ${11} !" echo "参数总数有 $# 个!"...结果: 2、函数与命令的执行结果可以作为条件语句使用。要注意的是,和 C 语言不同,shell 语言中 0 代表 true,0 以外的值代表 false。
之前写了一篇关于linux下常用的几个命令,参考Linux入门--提高工作效率的命令 一、bash shell中的快捷键 光标移动命令 Ctrl + a - 跳到命令行行首 Ctrl + e - 跳到命令行尾...1、先按Ctrl + r,查找到一个长命令后,按Ctrl + x Ctrl + e调出编辑器进行编辑; 2、保存后即可直接运行编辑后的命令。...组合使用实例 命令组合:Ctrl + u [...].../来查找相关文件; 3、找到后,按Ctrl + y,刚才输入一半的命令会恢复; 二、命令 显示前十个资源占用最大的进程(按内存排序,如果+3则是按CPU排序) ps aux | sort -nk +4...,如这里查看从555到7000端口 lsof -i :555-7000 用普通用户编辑了无权限的文档时可以使用下面命令sudo :w !
};//十个数的无序数列 int i,j,t; printf("此程序使用冒泡排序法排列无序数列!...[n-i-2]与a[n-i-1]比较为止结束 { if(a[j]>a[j+1])//后一位数比前一位数小的话,就交换两个数的位置(升序)...[n-i-2]与a[n-i-1]比较为止结束 { if(a[j]>a[j+1])//后一位数比前一位数小的话,就交换两个数的位置(升序)...','y','x'};//十个数的无序字符数列 printf("此程序使用冒泡排序法排列无序数列!...=t; } } } return; } 执行情况: 知识总结: 冒泡排序法:也叫升序排序法,但是相比起二分法查找只能应用于有序数列,二如何将一个无序数列变的有序就可以使用冒泡排序法
Shell十个经典实用脚本代码案例合集 Shell脚本是Linux运维自动化的基础工具,语法简单、无需编译,能快速完成文件处理、系统监控、批量运维等工作。...本文整理10个行业高频经典Shell脚本,全部附带可直接运行的完整代码,适合新手练习与线上环境使用。 1. 批量创建文件夹脚本 项目初始化时常需要批量生成有序目录,循环语句快速完成批量创建。 #!.../bin/bash MEM=$(free | awk '/Mem/{printf "%.0f", $3/$2*100}') echo "当前内存使用率:${MEM}%" if [ $MEM -gt 80...自动清理过期日志脚本 定时删除多天前老旧日志,释放磁盘存储空间,避免日志堆积。 #!.../bin/bash find /var/log -name "*.log" -mtime +3 -delete echo "3天前过期日志清理完成" 5.
此篇主要总结了Windows下MFC编程字符串相关的一些知识,如CString, CStringList等的使用....CString MFC下最好用的字符串类应该就是CString了.CString是MFC中的一个类,包含了许多好用的操作如 格式化,查找,计算长度等....要使用CString,需要在工程引用头文件:#include ,一般放到stdafx.h预编译头中. 另外需要在项目属性中选择"在共享DLL中使用MFC"....// 查找 POSITION pos = str_list.Find("123"); // 获取由字符串指定的元素的位置 POSITION pos = str_list.FindIndex...一个小问题 写这篇总结的时候,最后附录有十个链接,我在本地localhost测试,这十个链接只能显示六个, 而且每次刷新出来的页面还都不一样,看网页代码最后部分是乱码,改改markdown中的[]与()
/bin/bash # author:菜鸟教程 # url:www.runoob.com demoFun(){ echo "这是我的第一个 shell 函数!".../bin/bash # author:菜鸟教程 # url:www.runoob.com funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算..."...第十个参数为 10 ! 第十个参数为 34 ! 第十一个参数为 73 ! 参数总数有 11 个! 作为一个字符串输出所有参数 1 2 3 4 5 6 7 8 9 34 73 !...注意,$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。...后台运行的最后一个进程的ID号 $@ 与$*相同,但是使用时加引号,并在引号中返回每个参数。 $- 显示Shell使用的当前选项,与set命令功能相同。 $? 显示最后命令的退出状态。
获取函数的return值 echo "back from the function" 函数调用: function hello() 或 function hello 或 hello B)、函数参数...echo "第十个参数为 $10 !" echo "第十个参数为 ${10} !" echo "第十一个参数为 ${11} !" echo "参数总数有 $# 个!"...} funWithParam 1 2 3 4 5 6 7 8 9 34 73 注意,10 不能获取第十个参数,获取第十个参数需要{10}。当n>=10时,需要使用 C)、函数返回值 #!.../bin/bash # fun2.sh funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算..."...echo "输入第二个数字: " read anotherNum echo "两个数字分别为 return ((aNum+ } funWithReturn echo "输入的两个数字之和为
不能使用bash里的关键字(可用help命令查看保留关键字)。 2、 使用 使用一个定义过的变量,只要在变量名前面加美元符号即可,如: content="hello world!"...查找字符 i 或 o 的位置(哪个字母先出现就计算哪个): string="huawei is a great compan" echo `expr index "$string" io` #.../bin/bash function funWithParam(){ echo "第一个参数为 $1 !" echo "第十个参数为 $10 !"...第十个参数为 110 ! 第十个参数为 34 ! 第十一个参数为 73 ! 参数总数有 11 个! 作为一个字符串输出所有参数 11 22 3 4 5 6 7 8 9 34 73 !...参数获取时 $n 与 ${n} 还是有区别的,特别是第二行的打印。 $10 不能获取第十个参数,获取第十个参数需要 ${10}。当n>=10时,需要使用 ${n} 来获取参数。
#获取函数的return值,就是获取上一个命令的状态码,如果return 2没有注释,就是获取return 2 命令的状态吗。.../bin/bash # fun1.sh funWithParam(){ echo "第一个参数为 $1 !" echo "第二个参数为 $2 !"...} funWithParam 1 2 3 4 5 6 7 8 9 34 73 注意,$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。.../bin/bash # fun2.sh funWithReturn(){ echo "这个函数会对输入的两个数字进行相加运算...".../bin/bash # fun_other.sh . /root/fun1.sh # 注: .
一、接口是什么PING接口-PLUS全球版是一个第三方Ping探测API,由接口盒子自研并发多线检测协议,调度全球20+国家、数十个检测节点对你指定的IP/域名发起Ping,一般3–15秒即可返回各地节点的延时结果...id=88888888&key=88888888&dy=0&host=www.***.cn"dy=0会触发全球全节点并发,返回几十个节点的。2️⃣PHP示例(cURLGET)的ID';$key='你的KEY';$host='www.***.cn';$dy=0;//0...,否则可能拿到半截或空datas域名别带协议头——host=https://www.xxx.com❌,host=www.xxx.com✅七、一句话定位如果你需要一个不用自己布海外机、又能一次性看全球几十个点...Ping延迟的接口,这个PLUS版算是免费API里节点覆盖比较全的一档,PHP/Python几行就能接进监控脚本,做站点出海前的网络摸底挺合适。
Bash 由于易用和免费,在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。...不能使用bash里的关键字(可用help命令查看保留关键字)。 有效的 Shell 变量名示例如下: RUNOOB LD_LIBRARY_PATH _var var2 无效的变量命名: ?...原生 bash **不支持 **简单的数学运算,但是可以通过其他命令来实现,例如expr。 expr 是一款表达式计算工具,使用它能完成表达式的求值操作。...$sum 运行脚本,输出: 5050 使用中使用了 Bash let 命令,它用于执行一个或多个表达式,变量计算中不需要加上 $ 来表示变量,具体可查阅:Bash let 命令。...,获取第十个参数需要 10不能获取第十个参数,获取第十个参数需要{10}。
艾瑞市场咨询(iResearch)提供了一组过去二十个月——即2012年8月到今年4月的数据给我,包括:排名前20位APP产品的使用时长、覆盖人数及覆盖人数月复合增长率。...一个最突出的印象便是:寡头型统治者正在出现。 二十个月前的前五名,分属于五家不同的公司,可是二十个月之后,前五名已被腾讯系和阿里系全部包揽!...若放眼于前二十位覆盖人数最多的产品,这个态势也是明显的:二十个月前的APP产品分属于13家完全独立的公司,可谓春秋割据,天下纷乱,可是如今却只归属于“战国七雄”,其中,属于腾讯系的有7家,除了京东商城、...我们再来看使用时长的前二十位产品。在2012年8月,排名前三位的都是腾讯的产品,分别是QQ手机浏览器、QQ和微信,而到今年4月,排名更改为微信、QQ和优酷。...在使用时长的前二十个app名单中,寡头竞争的情况仍然显著,腾讯系和阿里系分别占据了五款,为半壁江山。
在上一节中,我们了解了前向传播以及如何将单个图像从训练集中传递到我们的网络。...现在,让我们看看如何使用一批图像来完成此操作。我们将使用数据加载器来获取批处理,然后,在将批处理传递到网络之后,我们将解释输出。 传递一个 batch的图像到网络 首先,回顾一下上一节的代码设置。...这反映了以下事实:我们有十个图像,并且对于这十个图像中的每一个,我们都有十个预测类别。...argmax() 函数的作用是查看这十组中的每组,找到最大值,然后输出其索引。 对于每组十个数字: 查找最大值。...每个数字是出现最大值的索引。我们有十个数字,因为有十个图像。一旦有了这个具有最大值的索引张量,就可以将其与标签张量进行比较。
,把新增的文件和更改的文件全都给还原回去,然而在编写新功能的时候我忘记 Commit 了!!!...导致这些文件直接丢失(并不在回收站),包括写新功能前的代码和写新功能后的代码全都丢失了 !!!...找回前提 庆幸的时候,写新功能前的代码我成功 add 到了暂存区,只是未 Commit 而已,那么就能找回对应的文件(仅仅只是文件,并且没有文件名,项目结构都无法还原 )。...开始找回 故,此次目的是找回 add 过而未 commit 的文件,首先打开 git bash 输入 git fsck --lost-found 进入.git\lost-found\other 然后通过文本编辑器打开即可...事后回想 可能这次丢失的仅仅只是几十个文件,下次丢失的可能就是一个项目了。所以在每次更改代码前做好备份才是首要做的,同时也感谢 git 这么好用的版本控制系统,不然这篇博客可能也不存在。