- 博客(14)
- 资源 (2)
- 收藏
- 关注

原创 Shell中BASH与KSH使用管道时的差别
注:此文涉及实际项目源码截图,查看时可不关注处理逻辑! 根据测试与实际的使用过程中发现:BASH中管道内都为子进程,而KSH中最后一个管道为父进程其他为子进程!(简单的测试过程放在最后)。因此KSH与BASH转换时,在使用管道的地方,有以下几种情况时,需要注意:(一) 管道+read的方式:主进程读取不了值例如:建议修改:1. 这里可以读取多个值(推荐这种方式修改):...
2018-07-10 09:38:54
1516
原创 适配器模式Adapter-日志管理阶段迭代案例-JAVA实现
=====开发第一阶段客户第一阶段需求:* 用户要求记录数据库操作日志,存储形式为文件;* 记录信息有:日志流水号、执行人员、执行操作内容(更新/删除/插入等...)、执行时间;开发分析:* 定义日志模型,对日志对象进行序列化存文件。* 实现日志存储方式* 进行接口测试UML设计图:源码:Client.java package com.pattern.adapt...
2018-12-27 15:43:42
353
原创 适配器模式Adapter-经典结构-JAVA实现
经典结构:JAVA UML类图:实现源码及说明:Client.javapackage com.pattern.adapter;/* * 客户端类(手机) * main逻辑中处理:手机-》miniUSB接口-》miniUSB与USB适配器-》USB5v电源输入,获取电量 * 其中分为类适配器与对象适配器 * @author yuanwm * */public...
2018-12-26 15:19:22
231
原创 适配器模式Adapter-概述
意图将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。别名包装器Wrapper动机有时,为复用而设计的工具箱类不能够被复用的原因仅仅是因为它的接口与专业应用领域所需要的接口不匹配。适用性你想使用一个已经存在的类,而它的接囗不符合你的需求。 你想创建一个可以复用的类,该类可以与其他不相关的类或...
2018-12-26 15:11:12
214
原创 优化20181218版-Python实现Linux下多并发scp/ssh以及xshell客户端
历史版本版本优化记录:*******20181217 优化相关记录*********** 文件的上传、下载支持正则表达式解析 a、在paramiko_sh中新增上传/下载中识别Linux/UNIX通配符支持; b、在paramiko_sh/multistp中将原单文件/目录的遍历修改为解析通配符后再进行列表遍历 c、对原multistp(目录传输)新增文件传输功能兼...
2018-12-19 13:59:16
688
原创 Paramiko模块实现Linux下多并发scp/ssh以及xshell客户端
***环境是在Linux/Unix主机之间****###需求1、一台主机无密码登录其他主机进行操作(如同:SCRT)2、不用登录其他主机就能实现主机命令执行3、远程下载、上传文件4、远程多并发上传、下载文件夹5、操作方式类似于Linux scp/ssh命令操作###主要使用工具及技术1、paramiko模块的shell、sftp、ssh相关功能;2、多进程并发;3、进程队列...
2018-11-05 20:37:31
880
原创 MAC OS下Wireshark源码编译安装
1. 背景 此次由于项目需要利用Wireshark进行二次开发,因此必须源码编译安装;由于本人在Mac Os环境的编译安装遇到很多问题,然后一一解决,因此在这里说明我的安装步骤:2. 安装编译步骤 说明:如果缺少命令可以用brew工具安装(这个工具的安装可百度,这里不作说明)1) 下载源码(此次用2.4.5(wireshark-2.4.5.tar.x...
2018-07-29 16:08:18
877
原创 C/C++中system函数使用问题,返回报错:NO child processe
system报错现象:在Linux下用system()函数执行命令时出错,返回-1,错误原因NO child processes。分析:根据官方手册,如果SIGCHLD信号行为被设置为SIG_IGN时,waitpid()函数有可能因为找不到子进程而报ECHILD错误。问题的解决方案:在调用system()函数前重新设置SIGCHLD信号为缺省值,即signal(SIGCHLD,...
2018-07-19 17:33:51
2236
原创 SQL数据库基本操作对应Shell脚本文件处理
一、前言日常工作中,一些数据统计的源数据是文件,因为文件数据统计不像数据库操作那样方便,如果导入数据库再进行操作,可能比较麻烦;因此,这里将SQL数据库基本操作与Shell对文件数据操作进行对应,方便用Shell的语法进行文件处理。这里分别用Oracle SQL与shell工具操作同一数据进行操作演示,演示数据较少,日常操作数据一般为千万级以上,文件数也较多。因此需要结合多进程并发处理,由于前...
2018-07-19 17:22:52
587
原创 学习Shell脚本的多进程并发与控制
一、前言在日常数据处理过程中,很多时候用的都是单进程处理;如果任务较大的时候,这样耗时比较久同时也浪费资源,可将任务多进程并发处理,并合理控制其进程数,将很有效的利用机器资源、减少时间。经过资料查询与实践,这里脚本的功能就是产生多进程并控制其并行进程数量。具体多进程的好处可以参考其他资料,这里就不细说了。并行进程数超过任务总数是没有意义的,因为实际并行总数会小于等于任务总数;二、应用场景比如抓取网...
2018-07-09 12:18:10
3018
原创 20151117C/S与B/S的区别与联系
一、C/S与B/S的联系 C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Browser/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape N
2015-11-17 23:01:58
439
原创 20151117《Unix环境高级编程》阅读笔记:前言
接触这本书有三个月了,但是都没有认真的去阅读;今天终于下决心利用一些空余的休闲时间去阅读中文的第二版,其实我个人还是比较阅读新出的第三版,但是苦于对英文的学习没有达到标准,而却对于自己的水平可能还是停留在Unix编程的初级阶段,因此,最终决定先读第二版,后面转自己翻译并阅读第三版的内容。 于都这本书之前,我了解到这是unix编程很好的一本书。因此,我阅读完前言过后,有两个方面的感受:1.作者写
2015-11-17 22:55:05
329
原创 20151117《Unix环境高级编程》文件apue.h的获取与使用
在http://www.apuebook.com/下载src.tar.gz源代码的压缩包。1、解压至/home/xxx/目录下 (解压的时候用file命令查看是什么格式,此处先用tar -xzvf,而后用tar -xvf,先为gz包,调用ungiz命令,后为tar)2、修改 Make.defines.linux中的WKDIR=/home/xxx/apue.2e,为WKDIR=/home/xxx/a
2015-11-17 22:52:01
326
原创 20151113Ubuntu下samba服务器的安装与配置(亲测)
1、首先在Ubuntu安装好samba,具体步骤为:安装samba:sudo apt-get install samba 安装smbclient:sudo apt-get install //没有这个无法使用sambpasswd命令 安装smbfs:sudo apt-get smbfs2、修改配置文件sudo vi /etc/samba/smb.conf 编辑smb.conf 文件
2015-11-13 23:43:03
380
基于51单片机的数字电压表设计
2015-01-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人