01 2013 档案
开发项目的简单流程(需求、数据库、编码)
摘要:很长时间没有更新博客了,心里一直想写点什么东西的,可是,回到住的地方的时候心就懒了,不爱动手,再加上这段时间比较忙,心情也比较复杂,所以一直没有更新博客。 今天是星期天,仔细回想一下以前的工作,心 里大致的想了一段时间,对我这段时间的工作算是做一个总结吧,因为,在周五的时候就是我们的需求有点小变化... 阅读全文
posted @ 2013-01-24 22:20 猿人谷 阅读(477) 评论(0) 推荐(0) 编辑
c++---函数
摘要:一、函数的介绍 在过程化编程中, 为了将一个较大的功能顺利实现, 通常会将这个大的功能进行分解, 例如要实现一个学生信息管理系统, 一个学生信息管理系统至少包括学生信息的 添加、查询、删除、修改 等功能, 这些功能要求就是对该系统的初步分解, 然后以 查询 功能为例对其继续分解, 查询 功能可以再次分解为由以下几个功能组成的模块: ①. 获取用户查询条件 ; ②. 到数据库查询该学生信息 ; ③. 按照一定格式输出查询结果。 如果感觉该功能实现起来还是比较困难那么就继续分解, 直到可以顺利实现。这些功能分解后的实现就是依靠函数, 函数在广义上理解为具有具体功能的一个模块, 在函数实... 阅读全文
posted @ 2013-01-24 08:29 猿人谷 阅读(340) 评论(0) 推荐(0) 编辑
正则表达式
摘要:地狱-天堂之说,源自老程序员的话.老程序员告诉我们,没有正则表达式就像地狱一般,有了正则表达式我们就像进了天堂一样.好,我们下面看这么几个需求:需求1:“192.168.10.5[port=8080]”,这个字符串表示IP地址为192.168.10.5的服务器的8080端口是打开的,请用程序解析此字符串,然后打印出“IP地址为***的服务器的***端口是打开的”。需求2:“192.168.10.5[port=21,type=ftp]”,这个字符串表示IP地址为192.168.10.5的服务器的21端 口提供的是ftp服务,其中如果“,type=ftp”部分被省略,则默认为http服务。请用程序 阅读全文
posted @ 2013-01-22 08:18 猿人谷 阅读(3064) 评论(0) 推荐(0) 编辑
hadoop和Hive的数据处理流程
摘要:需求场景:统计每日用户登陆总数每分钟的原始日志内容如下:http://www.blue.com/uid=xxxxxx&ip=xxxxxx假设只有两个字段,uid和ip,其中uid是用户的uid,是用户的唯一标识,ip是用户的登陆ip,每日的记录行数是10亿,要统计出一天用户登陆的总数。处理流程建表那么我们首先要在hive里建表,建表语句如下:CREATE TABLE login ( uid STRING, ip STRING)PARTITIONED BY (dt STRING)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','STO 阅读全文
posted @ 2013-01-18 17:00 猿人谷 阅读(398) 评论(0) 推荐(0) 编辑
Ubuntu:带着Android的芯 走着微软的路
摘要:移动操作系统的市场已经形成了三大系统三足鼎立的局面,谷歌的Android、苹果的iOS以及微软的Windows Phone三大移动移动操作占据着主要的领导地位。在Android操作系统出现的时候,市面上还有包括像诺基亚的Meego、三星Bada、Limo等 小众的移动操作系统出现,经过了1年多的发展,那些年昙花一现的移动操作系统机会都宣告死亡。最近,一批新兴的移动操作系统悄然崛起,新一代MeeGo系 统旗鱼(Sailfish)、Firefox OS、三星Tizen等新系统出现之后,又有一个新的移动操作系统诞生,这就是Ubuntu。Canonical发布Ubuntu系统的时候,Ubuntu创始人 阅读全文
posted @ 2013-01-14 19:56 猿人谷 阅读(197) 评论(0) 推荐(0) 编辑
各大建站工具中如何安装百度统计
摘要:1、Discuz安装百度统计方法:首先在百度统计获取安装代码,然后登陆discuz后台,进入全局>站点信息>,复制统计代码并粘贴到“网站第三方统计代码”文本框中,点击提交。2、phpwind安装百度统计方法:首先在百度统计获取安装代码,然后登陆phpwind后台,进入全局>站点信息>,复制统计代码并粘贴到“网站第三方统计代码”文本框中,点击提交完成。3、DVBBS安装百度统计方法:首先在百度统计获取安装代码,然后登陆DVBBS后台,进入常规管理>论坛基本设置,复制统计代码并粘贴到“论坛版权信息”,点击提交完成。4、DeDecms安装百度统计方法:首先在百度统计获取 阅读全文
posted @ 2013-01-14 19:47 猿人谷 阅读(2270) 评论(0) 推荐(0) 编辑
使用bash编写Linux shell脚本--参数和子壳
摘要:为了成为一个灵活的工具,一个合格的脚本必须提供额外的信息来说明此脚本的作用,如何执行此脚本以及在哪儿执行此脚本。和命令一样脚本也使用参数。开关和参数提高了重用性同时也减少了成本,节省了时间。定位的参数有三种有效的方法可以使Linux脚本使用参数。第一种使用定位参数。脚本根据在命令行出现参数的位置调用参数。因为其他两种依赖于定位参数,所以先讨论这个。Bash变量使用“$0”标示脚本的路径。不必是全路径名,但是它定义了执行脚本所在的路径。$ printf “%s\n” “$0”/bin/bash在这个例子中,Bash会和开始命令/bin/bash。当参数命令组合了basename命令时,只留下脚本 阅读全文
posted @ 2013-01-14 11:16 猿人谷 阅读(2683) 评论(0) 推荐(0) 编辑
Linux下的Telnet设置方法介绍
摘要:linux 下telnet的设置2007-03-18 21:35Telnet服务的配置步骤如下:一、安装telnet软件包(通常要两个)1、 telnet-client (或 telnet),这个软件包提供的是 telnet 客户端程序;2、 telnet-server ,这个软件包提供的是 telnet 服务器端程序;安装之前先检测是否这些软件包已安装,方法如下:[root@echo root]#rpm –q telnet或[root@wljs root]#rpm –q telnet-client[root@echo root]#rpm –q telnet-server如果没有检测到软件包, 阅读全文
posted @ 2013-01-14 11:15 猿人谷 阅读(1670) 评论(0) 推荐(0) 编辑
Linux下常用的程序代理服务器(proxy)配置
摘要:Linux下有很多程序都只有命令行接口,对于这类程序,它们通过代理服务器(proxy)访问网络的方式也不尽相同。在本文中Easwy 总结了一些常用Linux程序配置代理服务器的方法。[ 通用代理服务器配置 ] 对于大多数Linux控制台程序,例如Debian 或Ubuntu中的apt-get 和aptitude 命令、git命令 、wget命令,这些程序都使用http_proxy 和ftp_proxy 环境变量来获取代理服务的配置。方法是在你的~/.bashrc里加上类似下面的话:export http_proxy=http://username:password@proxyserve... 阅读全文
posted @ 2013-01-14 11:13 猿人谷 阅读(2545) 评论(0) 推荐(0) 编辑
使用bash编写Linux shell脚本--复合命令
摘要:来源:http://blog.csdn.net/fox_lht/article/details/5897336除了最简单的脚本,你很少想要执行每一个命令。执行一组命令或者重复执行一组命令若干次比执行单个命令更加有助。复合命令是将命令封装在一组其他命令中。从可读性来说,封装后的命令使用缩进格式将会使复合命令的代码清晰并便于阅读。管理员曾经抱怨过我的缩进比标准的缩进少了一个空格(我必须使用尺子在屏幕上测量才能确定此事),我认为这不是什么问题,但是他说,当输入 0 时,它的程序会崩溃。复合命令总是有两个命令组成。命令的结束符是该命令相反拼写顺序,就像使用括号将命令括住了。例如:神秘莫测的命令 esa 阅读全文
posted @ 2013-01-14 11:12 猿人谷 阅读(946) 评论(0) 推荐(0) 编辑
使用bash编写Linux shell脚本--调试和版本控制
摘要:转自:http://blog.csdn.net/fox_lht/article/details/5950790# 当我还在布鲁克大学上学的时候, Macquarium 实验室中充满了苹果公司的 Macintosh Plus 电脑。一天,我在为第三年的操作系统课程准备一个程序。我的一个小程序报告没有错误,当我运行它时,黑白色的桌面上出现了竖条, 我的软盘被退出来了,计算机然后从新启动。经过更仔细的检查,我意识到我在 if 语句中使用了不正确的判断符号“ = ”,应该是“ == ”。这个小错误导致了不可以预见的结果,从那时起,我将 C 语言当做一个有精神病的室友,我们可以一起生活、一起工作,但是只 阅读全文
posted @ 2013-01-14 11:10 猿人谷 阅读(1434) 评论(0) 推荐(0) 编辑
IP数据报首部校验和算法
摘要:当用google搜索IP数据报首部校验和算法的时候,总是看到的是代码,没有看到其过程,于是就有了此文,如有错误请指正。文章省略一点,呵呵?IP/ICMP/IGMP/TCP/UDP等协议的校验和算法都是相同的,算法如下:?在发送数据时,为了计算数IP据报的校验和。应该按如下步骤:(1)把IP数据报的首部都置为0,包括校验和字段。(2)把首部看成以16位为单位的数字组成,依次进行二进制反码求和。(3)把得到的结果存入校验和字段中。在接收数据时,计算数据报的校验和相对简单,按如下步骤:(1)当接收IP包时,需要对报头进行确认,检查IP头是否有误,算法同上2、3步,然后判断取反的结果是否为0,是则正确 阅读全文
posted @ 2013-01-14 10:42 猿人谷 阅读(562) 评论(0) 推荐(0) 编辑
Linux编程推荐书籍
摘要:首先要说讲述计算机网络和TCP/IP的书很多。先要学习网络知识才谈得上编程讲述计算机网络的最经典的当属Andrew S.Tanenbaum的《计算机网络》第五版,这本书难易适中。《计算机网络(第5版)》是国内外使用最广泛、最权威的计算机网络经典教材。目前已经是第五版,本书作者80年代就开发出MINIX,是一个用于操作系统教学的类UNIX(的小型操作系统。而linux就是受其影响。。。。第五版是2012年出的,也比较新。作 者: (美)特南鲍姆,(美)韦瑟罗尔 著 严伟,潘爱民 译 丛 书 名:出 版 社: 清华大学出版社ISBN:9787302274629出版时间:2012-03-01---. 阅读全文
posted @ 2013-01-11 08:32 猿人谷 阅读(528) 评论(0) 推荐(0) 编辑
进程控制实验--fork()
摘要:二 进程的控制实验目的1、掌握进程另外的创建方法2、熟悉进程的睡眠、同步、撤消等进程控制方法实验内容 1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容2、利用wait( )来控制进程执行顺序实验指导一、所涉及的系统调用在UNIX/LINUX中fork( )是一个非常有用的系统调用,但在UNIX/LINUX中建立进程除了fork( )之外,也可用与fork( ) 配合使用的exec( )。1、exec( )系列系统调用exec( )系列,也可用于新程序的运行。fork( )只是将父进程的用户级上下文拷贝到新进程中,而exec( )系列可以将一个可执行的二进制文件 阅读全文
posted @ 2013-01-10 22:13 猿人谷 阅读(1745) 评论(0) 推荐(1) 编辑
shell实现随机数多种方法(data,random,uuid)
摘要:在日常生活中,随机数实际上经常遇到,想丢骰子,抓阄,还有抽签。呵呵,非常简单就可以实现。那么在做程序设计,真的要通过自己程序设计出随机数那还真的 不简单了。现在很多都是操作系统内核会提供相应的api,这些原始参数是获取一些计算机运行原始信息,如内存,电压,物理信号等等,它的值在一个时间段可 以保证是唯一的了。好了,废话我就不说了。呵呵。 shell脚本程序我们有那些获得随机数方法呢?一、通过时间获得随机数(date)这个也是我们经常用到的,可以说时间是唯一的,也不会重复的,从这个里面获得同一时间的唯一值。适应所有程序里面了。例子:?12345678910111213[chengmo@cento 阅读全文
posted @ 2013-01-09 19:26 猿人谷 阅读(1631) 评论(0) 推荐(0) 编辑
grep命令
摘要:Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是GlobalRegularExpressionPrint,表示全局正则表达式版本,它的使用权限是所有用户。grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2。我们利用这些返回值就可进行一些自动化的文 阅读全文
posted @ 2013-01-09 17:10 猿人谷 阅读(276) 评论(0) 推荐(0) 编辑
为什么环境变量的数据可以被子进程所引用?
摘要:什么是“子进程”呢?就是说在我目前这个shell的情况下,去打开另一个新的shell,新的那个shell就是子进程。在一般的情况下,父进程的自定义变量是无法在子进程内使用的。但是通过export将变量变成环境变量后,就能够在子进程下面应用了。子进程仅会继承父进程的环境变量,子进程不会继承父进程的自定义变量,所以你原本bash中的自定义变量在进入了子进程后就会消失不见,一直到你离开子进程并回到原本的父进程后,这个变量才会又出现。为什么环境变量的数据可以被子进程所引用呢?这是因为内存配置的关系。理论上是这样的:当启动一个shell,操作系统会分配一记忆块给shell使用,此内存内的变量可让子进程取 阅读全文
posted @ 2013-01-06 21:47 猿人谷 阅读(418) 评论(0) 推荐(0) 编辑
Python抓取中文网页
摘要:早就有想法把博客每天的访问流量记下来,刚好现在申请了GAE的应用,又开始学Python,正好拿这个练手。打算先利用Python把访问记录保存在本地,熟悉之后可以部署到GAE,利用GAE提供的cron就可以每天更近访问流量了。OK,开始~ 首先是简单的网页抓取程序: [python] view plaincopy import sys, urllib2 req = urllib2.Request("http://blog.csdn.net/nevasun") fd = urllib2.urlopen(req) while True:data = fd.read(1024) i 阅读全文
posted @ 2013-01-04 19:30 猿人谷 阅读(364) 评论(0) 推荐(0) 编辑
unix共享内存要点
摘要:共享内存优点: 1.在进程之间不通过内核传递数据,即不通过系统调用拷贝数据,达到快速,高效的数据传输。 2.随内核持续 *nix的共享内存有两套API:Posix和System V 两者的主要差别是共享内存的大小 1.Posix共享内存大小可通过函数ftruncate随时修改 2.System V共享内存大小在创建时就已经确定,而且最大值根据系统有所不同 Posix共享内存 #include <sys/mman.h> (mmap,munmap,msync,shm_open,shm_unlink) 最主要的函数 -- mmap void* mmap(void* addr,size_t 阅读全文
posted @ 2013-01-04 13:32 猿人谷 阅读(417) 评论(0) 推荐(0) 编辑
PHP程序员应该掌握的10个技能
摘要:php程序员应该掌握的10个技能,看看你都掌握了哪些: 1、语法:必须熟练掌握 ,写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。 2、命令:必须熟悉PHP带的一些常用命令及其常用选项,熟悉那些命令,自己运行 php.exe -h 如果这些命令你没有全部使用过,那么你对PHP实际上还很不了解。 3、工具:必须至少熟练使用一种IDE的开发工具,例如:Eclipse、Netbeans、zend或者editplus,ultraedit,包括进行工程管理、常用选项的设置、PHP插件的安装配置以及进行调试。 4、API:PHP的核心API是非常庞... 阅读全文
posted @ 2013-01-04 13:15 猿人谷 阅读(506) 评论(0) 推荐(0) 编辑
ubuntu 12.04解决Broadcom STA无线网卡驱动安装失败解决
摘要:ubuntu 12.04解决Broadcom STA无线网卡驱动安装失败解决 首先,打开终端并输入:ls -nn | grep 0280查看网卡的PCI.ID, 我的是:03:00.0 Network controller [0280]: Broadcom Corporation BCM43227 802.11b/g/n [ 14e4:4727] 然后,输入sudo apt-get install --reinstall bcmwl-kernel-source,等安装完,再输入sudo modprobe wl 如果没有警告和错误的话,重新安装下无线驱动,应该就可以正常使用啦! PS:这个方法只 阅读全文
posted @ 2013-01-04 13:11 猿人谷 阅读(451) 评论(0) 推荐(0) 编辑
Linux系统下如何查看及修改文件读写权限
摘要:查看文件权限的语句: 在终端输入:ls -l xxx.xxx (xxx.xxx是文件名) 那么就会出现相类似的信息,主要都是这些:-rw-rw-r-- 一共有10位数 其中: 最前面那个 - 代表的是类型 中间那三个 rw- 代表的是所有者(user) 然后那三个 rw- 代表的是组群(group) 最后那三个 r-- 代表的是其他人(other) 然后我再解释一下后面那9位数: r 表示文件可以被读(read) w 表示文件可以被写(write) x 表示文件可以被执行(如果它是程序的话) - 表示相应的权限还没有被授予 现在该说说修改文件权限了 在终端输入: ... 阅读全文
posted @ 2013-01-04 09:17 猿人谷 阅读(324) 评论(0) 推荐(1) 编辑
如何恢复已删除的Linux下的普通文件
摘要:本人观点: 在不修改内核的情况下,恢复删除不久的小文件 是有效的,因为 只占一个直接 inode,不需要间接节点信息保存, 像重要的配置文件,可用此法恢复要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据。本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过几个实例介绍了如何手工恢复已经删除的文件。最后针对 ext2 现有实现存在的大文件无法正常恢复的问题,通过修改内核中的实现,给出了一种解决方案。对于很多 Linux 的用户来说,可能有一个问题一直都非常头疼:对于那些不小心删除的数据来说,怎样才能恢复出来呢?大家知道, 阅读全文
posted @ 2013-01-03 10:08 猿人谷 阅读(639) 评论(0) 推荐(0) 编辑
三种Linux服务器监控技术的对比
摘要:本文介绍三种Linux服务器监控技术的优缺点,其中有SNMP代理(客户端)方式、SSH方式、安装私有代理(客户端)方式等内容。Linux系统的强大的功能和绚丽的界面使得很多企业都选用Linux系统来做服务器,下面是介绍三种Linux服务器监控技术的优缺点。1.SNMP代理(客户端)方式SNMP(SimpleNetworkManagementProtocol)作为一种国际通用的网络管理协议被广泛的应用于对各种交换机,路由器 等网络设备的管理上,而现在也越来越多被用于对服务器的监控上。通过SNMP方式对服务器监控其优点是比较通用服务器一旦部署SNMPAgent,任何能 实现SNMP协议的软件都可对 阅读全文
posted @ 2013-01-03 09:49 猿人谷 阅读(502) 评论(0) 推荐(0) 编辑