- 浏览: 2198503 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (682)
- 软件思想 (7)
- Lucene(修真篇) (17)
- Lucene(仙界篇) (20)
- Lucene(神界篇) (11)
- Solr (48)
- Hadoop (77)
- Spark (38)
- Hbase (26)
- Hive (19)
- Pig (25)
- ELK (64)
- Zookeeper (12)
- JAVA (119)
- Linux (59)
- 多线程 (8)
- Nutch (5)
- JAVA EE (21)
- Oracle (7)
- Python (32)
- Xml (5)
- Gson (1)
- Cygwin (1)
- JavaScript (4)
- MySQL (9)
- Lucene/Solr(转) (5)
- 缓存 (2)
- Github/Git (1)
- 开源爬虫 (1)
- Hadoop运维 (7)
- shell命令 (9)
- 生活感悟 (42)
- shell编程 (23)
- Scala (11)
- MongoDB (3)
- docker (2)
- Nodejs (3)
- Neo4j (5)
- storm (3)
- opencv (1)
最新评论
-
qindongliang1922:
粟谷_sugu 写道不太理解“分词字段存储docvalue是没 ...
浅谈Lucene中的DocValues -
粟谷_sugu:
不太理解“分词字段存储docvalue是没有意义的”,这句话, ...
浅谈Lucene中的DocValues -
yin_bp:
高性能elasticsearch ORM开发库使用文档http ...
为什么说Elasticsearch搜索是近实时的? -
hackWang:
请问博主,有用solr做电商的搜索项目?
Solr中Group和Facet的用法 -
章司nana:
遇到的问题同楼上 为什么会返回null
Lucene4.3开发之第八步之渡劫初期(八)
上篇文章,散仙简单介绍了,如何在Linux下以shell脚本的方式与MySQL交互,本篇,我们来用shell脚本编写几个有用的实战例子
第一个脚本检测磁盘空间的top5
我们先看下du 命令统计:
查看最大的几个:
查看前5个,使用header命令
除此之外,我们在加个行号:
利用gawk再格式化一下:
封装成脚本之后,把统计信息,写入一个文本里:
注意在脚本里面我们又使用了重定向符号,将所有的STDOUT定位到我们的一个日志文件里面,这样就方便我们查看了,每次运行都生成一个新的日志记录文件,注意在shell终端输入的*路径需要转义,否则会出现问题。
下面看下第二个有用的脚本,备份文件,散仙只作了简单的归档,按年,月,日,分钟,来进行压缩备份:
下面看下如何获取指定磁盘的剩余空间,命令如下:
最重要的是最后一条命令
查看系统运行时间:
查看系统空闲内存:
查看僵尸进程的命令:
下面看下,将这些系统信息,汇集到一起,查看整体情况:
最后我们可以将系统信息,以文件形式,保存下来,或者保存到数据库里面,这样我们就可以轻松的通过数据库来查看,各个时间段的系统运行状况了。
第一个脚本检测磁盘空间的top5
我们先看下du 命令统计:
[search@h1 ~]$ du -s hadoop/* 296 hadoop/bin 230156 hadoop/dddir 132 hadoop/etc 56 hadoop/include 4188 hadoop/lib 56 hadoop/libexec 472 hadoop/logs 47320 hadoop/nddir 120 hadoop/sbin 125724 hadoop/share 30336 hadoop/tmp [search@h1 ~]$
查看最大的几个:
[search@h1 ~]$ du -s hadoop/* | sort -nr 230156 hadoop/dddir 125724 hadoop/share 47320 hadoop/nddir 30336 hadoop/tmp 4188 hadoop/lib 472 hadoop/logs 296 hadoop/bin 132 hadoop/etc 120 hadoop/sbin 56 hadoop/libexec 56 hadoop/include [search@h1 ~]$
查看前5个,使用header命令
[search@h1 ~]$ du -s hadoop/* | sort -nr | head -5 230156 hadoop/dddir 125724 hadoop/share 47320 hadoop/nddir 30336 hadoop/tmp 4188 hadoop/lib [search@h1 ~]$
除此之外,我们在加个行号:
[search@h1 ~]$ du -s hadoop/* | sort -nr | head -5 | cat -n 1 230156 hadoop/dddir 2 125724 hadoop/share 3 47320 hadoop/nddir 4 30336 hadoop/tmp 5 4188 hadoop/lib [search@h1 ~]$
利用gawk再格式化一下:
[search@h1 ~]$ du -s hadoop/* | sort -nr | head -5 | cat -n | gawk '{ print $1 "\t" $2 "\t" $3 }' 1 230156 hadoop/dddir 2 125724 hadoop/share 3 47320 hadoop/nddir 4 30336 hadoop/tmp 5 4188 hadoop/lib [search@h1 ~]$
封装成脚本之后,把统计信息,写入一个文本里:
[search@h1 827]$ cat c.sh if [ $# -eq 0 ]; then echo "请输入一个统计路径" else d=`date +%Y%m%d%H%M%S` #echo $d exec > disk$d.txt du -s $1 | sort -nr | head -5 | cat -n | gawk '{ print $1 "\t" $2 "\t" $3 }' fi [search@h1 827]$ sh c.sh 请输入一个统计路径 [search@h1 827]$ sh c.sh /home/search/hadoop/\* [search@h1 827]$ ll 总用量 8 -rw-rw-r-- 1 search search 216 8月 28 04:28 c.sh -rw-rw-r-- 1 search search 167 8月 28 04:29 disk20140828042921.txt [search@h1 827]$ cat disk20140828042921.txt 1 230156 /home/search/hadoop/dddir 2 125724 /home/search/hadoop/share 3 47320 /home/search/hadoop/nddir 4 30336 /home/search/hadoop/tmp 5 4188 /home/search/hadoop/lib [search@h1 827]$
注意在脚本里面我们又使用了重定向符号,将所有的STDOUT定位到我们的一个日志文件里面,这样就方便我们查看了,每次运行都生成一个新的日志记录文件,注意在shell终端输入的*路径需要转义,否则会出现问题。
下面看下第二个有用的脚本,备份文件,散仙只作了简单的归档,按年,月,日,分钟,来进行压缩备份:
[search@h1 827]$ cat d.sh year=`date +%Y` day=`date +%d` month=`date +%m` time=`date +%M` dirpath="./$year/$month/$day/$time/" mkdir -p $dirpath tar -zcvf $dirpath/data.tar.gz ./ echo "归档完毕!" [search@h1 827]$ sh d.sh ./ ./dd/ ./dd/disk20140828042921.txt ./dd/disk20140828043101.txt ./dd/disk20140828043111.txt ./dd/c.sh ./dd/m.tar.gz ./disk20140828042921.txt ./disk20140828043101.txt ./disk20140828043111.txt ./c.sh ./m.tar.gz ./2014/ ./2014/08/ ./2014/08/28/ ./2014/08/28/49/ ./d.sh 归档完毕! [search@h1 827]$ ll 总用量 28 drwxrwxr-x 3 search search 4096 8月 28 04:49 2014 -rw-rw-r-- 1 search search 221 8月 28 04:34 c.sh drwxrwxr-x 2 search search 4096 8月 28 04:34 dd -rw-rw-r-- 1 search search 167 8月 28 04:29 disk20140828042921.txt -rw-rw-r-- 1 search search 0 8月 28 04:31 disk20140828043101.txt -rw-rw-r-- 1 search search 22 8月 28 04:31 disk20140828043111.txt -rw-rw-r-- 1 search search 192 8月 28 04:49 d.sh -rw-rw-r-- 1 search search 503 8月 28 04:38 m.tar.gz [search@h1 827]$ cd 2014/ [search@h1 2014]$ ll 总用量 4 drwxrwxr-x 3 search search 4096 8月 28 04:49 08 [search@h1 2014]$ cd 08/ [search@h1 08]$ ll 总用量 4 drwxrwxr-x 3 search search 4096 8月 28 04:49 28 [search@h1 08]$ cd 28/ [search@h1 28]$ ll 总用量 4 drwxrwxr-x 2 search search 4096 8月 28 04:49 49 [search@h1 28]$ cd 49/ [search@h1 49]$ ll 总用量 4 -rw-rw-r-- 1 search search 1439 8月 28 04:49 data.tar.gz [search@h1 49]$ tar -zxvf data.tar.gz ./ ./dd/ ./dd/disk20140828042921.txt ./dd/disk20140828043101.txt ./dd/disk20140828043111.txt ./dd/c.sh ./dd/m.tar.gz ./disk20140828042921.txt ./disk20140828043101.txt ./disk20140828043111.txt ./c.sh ./m.tar.gz ./2014/ ./2014/08/ ./2014/08/28/ ./2014/08/28/49/ ./d.sh [search@h1 49]$ ll 总用量 32 drwxrwxr-x 3 search search 4096 8月 28 04:49 2014 -rw-rw-r-- 1 search search 221 8月 28 04:34 c.sh -rw-rw-r-- 1 search search 1439 8月 28 04:49 data.tar.gz drwxrwxr-x 2 search search 4096 8月 28 04:34 dd -rw-rw-r-- 1 search search 167 8月 28 04:29 disk20140828042921.txt -rw-rw-r-- 1 search search 0 8月 28 04:31 disk20140828043101.txt -rw-rw-r-- 1 search search 22 8月 28 04:31 disk20140828043111.txt -rw-rw-r-- 1 search search 192 8月 28 04:49 d.sh -rw-rw-r-- 1 search search 503 8月 28 04:38 m.tar.gz [search@h1 49]$
下面看下如何获取指定磁盘的剩余空间,命令如下:
[search@h1 827]$ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_h1-lv_root 18134344 3925876 13287280 23% / tmpfs 624956 0 624956 0% /dev/shm /dev/sda1 495844 32670 437574 7% /boot [search@h1 827]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_h1-lv_root 18G 3.8G 13G 23% / tmpfs 611M 0 611M 0% /dev/shm /dev/sda1 485M 32M 428M 7% /boot [search@h1 827]$ df -h /dev/mapper/vg_h1-lv_root Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_h1-lv_root 18G 3.8G 13G 23% / [search@h1 827]$ df -h /dev/mapper/vg_h1-lv_root | sed -n '/% \//p' /dev/mapper/vg_h1-lv_root 18G 3.8G 13G 23% / [search@h1 827]$ df -h /dev/mapper/vg_h1-lv_root | sed -n '/% \//p' | gawk '{ print $5}' 23% [search@h1 827]$
最重要的是最后一条命令
查看系统运行时间:
[search@h1 827]$ uptime | sed -n '/,/s/,/ /gp' | gawk '{print "系统运行时间: "$3}' 系统运行时间: 1:49 [search@h1 827]$
查看系统空闲内存:
[search@h1 827]$ free -m | sed -n '2p' | gawk '{print $4"m"}' 1012m [search@h1 827]$
查看僵尸进程的命令:
[search@h1 827]$ ps -al | gawk '{print $2,$4}' | grep Z [search@h1 827]$ ps -al | gawk '{print $2,$4}' | grep S S PID S 1211 S 1212 S 2014 S 2015 [search@h1 827]$ ps -al | gawk '{print $2,$4}' | grep z [search@h1 827]$
下面看下,将这些系统信息,汇集到一起,查看整体情况:
[search@h1 827]$ cat q.sh echo -n "当前磁盘的剩余容量: " df -h /dev/mapper/vg_h1-lv_root | sed -n '/% \//p' | gawk '{ print $5}' echo -n "当前系统的运行时间:" uptime | sed -n '/,/s/,/ /gp' | gawk '{print "系统运行时间: "$3}' echo -n "当前系统的空闲内存: " free -m | sed -n '2p' | gawk '{print $4"m"}' echo -n "当前是否有僵尸进程存在:" r=`ps -al | gawk '{print $2,$4}' | grep z` if [ -z $r ] ; then echo "无僵尸进程存在!" else echo $r fi [search@h1 827]$ sh q.sh 当前磁盘的剩余容量: 23% 当前系统的运行时间:系统运行时间: 2:04 当前系统的空闲内存: 1012m 当前是否有僵尸进程存在:无僵尸进程存在! [search@h1 827]$
最后我们可以将系统信息,以文件形式,保存下来,或者保存到数据库里面,这样我们就可以轻松的通过数据库来查看,各个时间段的系统运行状况了。
发表评论
-
备忘几个有用的shell脚本
2015-04-07 21:59 1521(1)在shell下,操作hadoop目录,批量命名或删除, ... -
shell脚本杂记(五)
2014-09-22 19:48 20361,找出多个文件所占用的磁盘空间 du f1 f2 [roo ... -
shell脚本杂记(四)
2014-09-19 20:03 17241,wget是一个用于文件 ... -
shell自动化部署批量建立用户和批量SSH配置
2014-09-18 18:29 3644在linux下面,shell脚本熟练使用,有时候可以帮助我们解 ... -
shell自动化部署神器expect
2014-09-17 21:08 4714Shell可以实现简单的控制流功能,如:循环、判断等。但是对于 ... -
shell脚本杂记(三)
2014-09-16 19:58 16361,我们先来熟悉下正则表达式一些字符含义的基础 ^行起始标记 ... -
shell脚本杂记(二)
2014-09-15 21:25 20361,求两个文件的交集comm a.txt b.txt -1 - ... -
shell脚本杂记(一)
2014-09-12 21:50 20581,登陆系统时,$代表 ... -
跟散仙学shell编程(十四)
2014-08-26 20:59 1949上篇散仙简单介绍了linu ... -
跟散仙学shell编程(十三)
2014-08-25 20:02 1348上篇散仙主要了讲述了gawk进阶的一些用法,本篇我们来了解下载 ... -
跟散仙学shell编程(十二)
2014-08-22 21:27 1599上篇文章散仙写了关于sed进阶,本篇我们来看下在linux中另 ... -
跟散仙学shell编程(十一)
2014-08-21 21:45 1683上篇散仙写了关于shell里面正则的基础知识,本篇我们来特意学 ... -
跟散仙学shell编程(十)
2014-08-20 21:22 1333上篇文章,散仙简单介绍了在linux中,使用sed和gawk编 ... -
跟散仙学shell编程(九)
2014-08-19 21:49 1731上篇散仙说了如何在linux里面构建更好的交互式shell,本 ... -
跟散仙学shell编程(八)
2014-08-18 21:50 1649上篇散仙说了linux里面函数的使用,本篇我们来看下如何在sh ... -
跟散仙学shell编程(七)
2014-08-15 21:46 1820上篇散仙在文章里描述了如何处理linux信号和脚本控制,本节我 ... -
跟散仙学shell编程(六)
2014-08-14 21:53 2119上篇介绍了linux里面的处理数据的方式,本篇散仙来说下,如何 ... -
跟散仙学shell编程(五)
2014-08-13 21:41 1685上一篇写的是处理用户输入,本篇散仙要写的是linux里面的标准 ... -
跟散仙学shell编程(四)
2014-08-12 21:46 1546上篇介绍了for循环命令 ... -
跟散仙学shell编程(三)
2014-08-11 21:38 1759散仙在上一篇文章里写了关于如何使用if-else以及case等 ...
相关推荐
【实验三实验报告1】是关于操作系统原理的一个实践项目,主要目标是开发一个独立内核的操作系统,涉及汇编与C语言的混合编程技术。实验旨在增强监控程序的命令处理能力和扩展内核功能,以便更好地管理和执行用户程序...
脆弱水印技术在图像篡改检测中的应用与挑战,脆弱水印技术在图像篡改检测中的应用与挑战,脆弱水印的图像篡改检测 ,脆弱水印; 图像篡改; 检测; 图像处理,基于脆弱水印的图像篡改检测技术
高效Delta机械臂运动控制卡:前瞻轨迹规划,G代码编程,多维插补,激光切割与绘图,机器视觉集成,扩展坐标与旋转功能,一键脱机运行,大容量存储,基于前瞻运动轨迹规划的Delta机械臂运动控制卡:高效G代码编程,圆弧插补与激光切割功能,配合机器视觉实现精准操作。高效精准操作与管理工具的创新型机械运动控制解决方案。,delta机械臂,delta机器人,运动控制器,运动控制卡 本卡采用前瞻运动轨迹规划,运动采用G代码指令编程,具有G5三维空间的圆弧插补,空间直线插补功能,子程序编程功能,逻辑判断语句功能,示教编程功能(支持手柄),变量位置编程功能,动态PWM激光输出功能(兼容舵机控制信号),动态频率脉冲输出功能,通用输入输出功能。 可极简单的实现绘图雕刻,3维激光切割功能。 轨迹图形可xy平面整体旋转功能。 可利用变量位置,获取外部坐标要求,可轻松配合机器视觉。 支持探针功能,测平面,测外形等。 可设置4组平移工件坐标系,2组参考原点。 新增2组空间旋转工件坐标系,支持任意图形直接空间旋转。 卡上一键脱机RAM区运行功能。 2M程序容量。 断电后位置记忆,变量坐标位置记忆,计数器记忆。 伺服
毕业设计
内容概要:随着模型参数量不断扩大,如从BERT到GPT-3,传统微调方法变得不可行。文章聚焦于参数高效微调(PEFT)策略,系统探讨了几十余种方法,包括加法型、选择型、重构型及其混合方法。文中详细介绍各类PEFT的具体操作(如引入额外参数、冻结部分权重等),并通过广泛实验验证其在大型预训练模型上的适用性和性能。特别指出,PEFT在保持高性能的同时极大减少了计算与内存成本,并针对十几亿乃至几十亿参数级别的模型展开测试与讨论。 适用人群:适用于从事大规模机器学习模型研究、开发的应用科学家和技术专家,尤其是那些希望通过减少资源消耗实现高效微调的技术团队成员。 使用场景及目标:该文章适用于希望在有限资源条件下优化大模型性能的人群。帮助研究人员理解不同类型PEFT的优点和局限,为实际项目中选择合适技术路线提供建议。其目的是为了指导开发者正确理解和应用先进的PEFT技术,从而提高系统的运行效率和服务质量。 其他说明:本文不仅提供了详尽的方法介绍和性能对比,而且为未来的研究指明方向,鼓励创新思维的发展,旨在推动参数有效调优领域的进步。同时提醒注意现有的挑战和未解决问题。
磷酸铁锂体系电池COMSOL模型构建解析与实践指南,磷酸铁锂体系电池COMSOL建模分析与优化方案探讨,出一个磷酸铁锂体系电池comsol模型 ,建立磷酸铁锂体系电池; comsol模型; 电池模拟; 模型构建; 锂离子电池。,构建磷酸铁锂体系电池Comsol模型,深入探索电池性能
开关磁阻电机多维控制策略仿真研究(基于Matlab 2016b的精细化模型),开关磁阻电机多策略控制仿真模型(matlab 2016b版本,含传统与智能控制策略及离线迭代算法),开关磁阻电机控制仿真(matlab 2016b版本仿真模型 自用) 模型包涵: 开关磁阻电机传统控制:电流斩波控制、电压PWM控制、角度位置控制。 智能控制:12 8三相开关磁阻电机有限元分析本体建模、转矩分配函数控制、模糊PID控制、模糊角度控制、神经网络在线自适应迭代控制。 部分离线迭代算法:遗传算法优化PID、粒子群算法优化PID。 biye研究生自用仿真模型 . ,核心关键词: 开关磁阻电机; 控制仿真; Matlab 2016b; 传统控制; 智能控制; 有限元分析; 转矩分配函数控制; 模糊PID控制; 神经网络在线自适应迭代控制; 遗传算法优化PID; 粒子群算法优化PID; 研究生自用仿真模型。,基于Matlab 2016b的开关磁阻电机控制模型研究与仿真优化研究生自用版
McgsPro_IoT驱动_V3.1.1.8
数学建模相关主题资源2
基于改进粒子群算法的光伏储能选址定容模型分析——针对14节点配网系统的实践与出力情况探索,基于改进粒子群算法的光伏储能选址定容模型分析与出力预测研究(含配图材料参考),含光伏的储能选址定容模型 14节点 程序采用改进粒子群算法,对分析14节点配网系统中的储能选址定容方案,并得到储能的出力情况,有相关参考资料 ,核心关键词:含光伏的储能选址定容模型;14节点;改进粒子群算法;配网系统;储能选址定容方案;出力情况;参考资料。,基于改进粒子群算法的14节点配网光伏储能选址定容模型及出力分析研究
基于需求响应与阶梯式碳交易的综合能源系统优化调度模型研究(MATLAB仿真实现),基于需求响应与碳交易的综合能源系统优化调度策略:灵活调配冷热电负荷,实现低碳高效运行。,考虑需求响应和碳交易的综合能源系统日前优化调度模型 关键词:柔性负荷 需求响应 综合能源系统 参考:私我 仿真平台:MATLAB yalmip+cplex 主要内容:在冷热电综合能源系统的基础上,创新性的对用户侧资源进行了细致的划分和研究,首先按照能源类型将其分为热负荷需求响应和电负荷需求响应,在此基础上,进一步分为可削减负荷、可转移负荷以及可平移负荷三类,并将柔性负荷作为需求响应资源加入到综合能源的调度系统中,从而依据市场电价灵活调整各类负荷,实现削峰填谷,改善负荷曲线等优势,此外,为了丰富内容,还考虑了阶梯式碳交易,构建了考虑阶梯式碳交易以及综合需求响应的综合能源低碳经济调度模型,设置了多个对比场景,验证所提模型的有效性,从而体现工作量,是不可多得的代码 场景一: 这段程序主要是用来进行某微网的运行优化。它包含了多个功能和应用,涉及到了能源集线器、需求侧柔性负荷、光伏、风机、燃气轮机等内容。 首先,程序读取了
multisim
内容概要:本文详细介绍了一系列用于科学研究、工程项目和技术开发中至关重要的实验程序编写与文档报告撰写的资源和工具。从代码托管平台(GitHub/GitLab/Kaggle/CodeOcean)到云端计算环境(Colab),以及多种类型的编辑器(LaTeX/Microsoft Word/Overleaf/Typora),还有涵盖整个研究周期的各种辅助工具:如可视化工具(Tableau)、数据分析平台(R/Pandas)、项目管理工具(Trello/Jira)、数据管理和伦理审核支持(Figshare/IRB等),最后提供了典型报告的具体结构指导及其范本实例链接(arXiv/PubMed)。这为实验流程中的各个环节提供了系统的解决方案,极大地提高了工作的效率。 适合人群:高校学生、科研工作者、工程技术人员以及从事学术写作的人员,无论是新手入门还是有一定经验的人士都能从中受益。 使用场景及目标:帮助读者高效地准备并开展实验研究活动;促进团队间协作交流;规范研究报告的形式;提高对所收集资料的安全性和隐私保护意识;确保遵循国际公认的伦理准则进行实验。
基于OpenCV与深度学习的人脸表情识别系统:Python编程,实时检测与视频加载的PyQt界面应用,基于OpenCV与深度学习的人脸表情识别系统:Python编程,PyQt界面,实时视频与图片检测.exe可执行文件,基于OpenCV的人脸表情识别系统 相关技术:python,opencv,pyqt,深度学习 (请自行安装向日葵远程软件,以便提供远程帮助) 可编译为.exe文件。 软件说明:摄像头实时检测,加载照片,视频均可。 有基础的同学,可自行修改完善。 第一张和第二张为运行截图。 ,人脸表情识别; Op
基于双端口直流微电网系统模型的改进下垂控制及稳定性分析(含电压鲁棒控制器与粒子群寻优权函数),基于双端口直流微电网系统模型的优化设计与分析:改进下垂控制、电压鲁棒控制器及仿真研究,直流微网,直流微电网系统模型,有两个端口。 外环有改进下垂控制,内环双pi环,带恒功率负载。 暂态性能良好,可用于控制器设计,稳定性分析等。 另外还有电压鲁棒控制器,小信号模型,根轨迹分析,粒子群寻优权函数等内容。 仅为simulink ,直流微网; 直流微电网系统模型; 改进下垂控制; 双pi环; 恒功率负载; 暂态性能; 控制器设计; 稳定性分析; 电压鲁棒控制器; 小信号模型; 根轨迹分析; 粒子群寻优权函数,基于改进下垂控制的直流微网系统模型:双PI环与恒功率负载研究
这是萨达萨达是发生发士大夫
Labview下的通用OCR识别技术:高效文本识别与图像处理解决方案,Labview下的通用OCR识别技术:提高文字识别效率与准确度,labview.通用OCR识别技术 ,核心关键词:LabVIEW; 通用OCR识别技术; 识别技术; OCR技术; 图像识别; 文字识别。,LabVIEW平台下的通用OCR识别技术
一个任务待办记录、提醒工具 可设定提前N天开始提醒 数据本地存储