2013年2月25日

摘要: 伯乐人才网6月9日发表了《写给即将入行的程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历,我在把他的心得做了不多的增改,并根据我的经历增加了“进阶”一节。这是一篇由新手和我这个老家伙根据我们的经历完成的文章。 我的这个朋友把这篇文章取名叫Build Your ProgrammingT. 阅读全文
posted @ 2013-02-25 19:54 百小度治哥 阅读(470) 评论(0) 推荐(0) 编辑
摘要: vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中 就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这 些命令,您就能够很容易将vim当作一个通用的万能编辑器来使用了。 完成本教程的内容大约需要25-30分钟,取决于您训练的时间。 每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上 进行训练(如果您是通过"vimtutor"来启动教程的,那么本文就已经是副本了)。 切记一点∶本教程的设计思路是在使用中进行学习的。也就是说,您需要通过 执行命令来学习它们本身的正确用法。如果您只是阅读而不操作,那么您可能 会很快遗忘这些 阅读全文
posted @ 2013-02-25 10:30 百小度治哥 阅读(547) 评论(0) 推荐(0) 编辑

2013年2月20日

摘要: os.path.abspath(path) #返回绝对路径os.path.basename(path) #返回文件名os.path.commonprefix(list) #返回list(多个路径)中,所有path共有的最长的路径。os.path.dirname(path) #返回文件路径os.path.exists(path) #路径存在则返回True,路径损坏返回Falseos.path.lexists #路径存在则返回True,路径损坏也返回Trueos.path.expanduser(path) #把path中包含的"~"和"~user"转换成用户 阅读全文
posted @ 2013-02-20 10:51 百小度治哥 阅读(8590) 评论(0) 推荐(0) 编辑
摘要: shell 与 export命令用户登录到Linux系统后,系统将启动一个用户shell。在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序。运行shell脚本程序时,系统将创建一个子shell。此时,系统中将有两个shell,一个是登录时系统启动的shell,另一个是系统为运行脚本程序创建的shell。当一个脚本程序运行完毕,脚本shell将终止,返回到执行该脚本之前的shell。从这种意义上来说,用户可以有许多 shell,每个shell都是由某个shell(称为父shell)派生的。在子shell中定义的变量只在该子shell内有效。如果在一个she 阅读全文
posted @ 2013-02-20 09:01 百小度治哥 阅读(918) 评论(0) 推荐(0) 编辑
摘要: source命令:source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。用法:source filename 或 . filenamesource命令除了上述的用途之外,还有一个另外一个用途。在对编译系统核心时常常需要输入一长串的命令,如:make mrpropermake menuconfigmake depmake cleanmake bzImage…………如果把这些命令做成一个文件,让它自动顺序执行,对于需要多次反复编译系统核心的用户来说会很方便,而用source命令就可以做到这一点,它的作 用就 阅读全文
posted @ 2013-02-20 00:03 百小度治哥 阅读(35388) 评论(0) 推荐(0) 编辑

2013年2月19日

摘要: 在命令行状态下单纯执行 $ cd `dirname $0` 是毫无意义的。因为他返回当前路径的"."。 这个命令写在脚本文件里才有作用,他返回这个脚本文件放置的目录,并可以根据这个目录来定位所要运行程序的相对位置(绝对位置除外)。 在/home/admin/test/下新建test.sh内容如下:cd `dirname $0`echo `pwd` 然后返回到/home/admin/执行sh test/test.sh 运行结果:/home/admin/test 这样就可以知道一些和脚本一起部署的文件的位置了,只要知道相对位置就可以根据这个目录来定位,而可以不用关心绝对位置。这 阅读全文
posted @ 2013-02-19 20:25 百小度治哥 阅读(22019) 评论(1) 推荐(2) 编辑
摘要: 在某些场合,可能我们需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中。一、cat和EOFcat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的;EOF是“end of file”,表示文本结束符。结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。二、使用看例子是最快的熟悉方法:# cat << EOF> test.sh> #!/bin/bash> #you Shell script writes here.> EOF结果:引用# cat test.sh#!/bin/bash#you Shell sc 阅读全文
posted @ 2013-02-19 19:03 百小度治哥 阅读(3612) 评论(0) 推荐(0) 编辑
摘要: 用途返回一个字符串参数的基本文件名称。语法basename String [ Suffix ]描述basename 命令读取 String 参数,删除以 /(斜杠) 结尾的前缀以及任何指定的 Suffix 参数,并将剩余的基本文件名称写至标准输出。basename 命令应用以下创建基本文件名称的规则:如果 String 参数是 //(双斜杠) 或如果 String 参数包含的都是斜杠字符,则将字符串更改为单个 /(斜杠)。跳过步骤 2 到 4。从指定字符串除去任何拖尾的 / 字符。如果在 String 参数中剩余任何 / 字符,则除去字符串的前缀直到(包含)最后一个 / 字符。如果指定 Suf 阅读全文
posted @ 2013-02-19 18:29 百小度治哥 阅读(667) 评论(0) 推荐(0) 编辑

2013年2月18日

摘要: 英文原文:10 steps to becoming a better programmer 这篇文章要介绍的,是我作为专业程序员这些年来学到的能真正提高我的代码质量和整体工作效率的 10 件事情。 1. 永远不要复制代码 不惜任何代价避免重复的代码。如果一个常用的代码片段出现在了程序中的几个不同地方,重构它,把它放到一个自己的函数里。重复的代码会导致你的 同事在读你的代码时产生困惑。而重复的代码如果在一个地方修改,在另外一个地方忘记修改,就会产生到处是 bug,它还会使你的代码体积变得臃肿。现代的编程语言提供了很好的方法来解决这些问题,例如,下面这个问题在以前很难解决,而如今使用 lam... 阅读全文
posted @ 2013-02-18 15:47 百小度治哥 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 在写sh脚本的时候,常常需要运行时输入一些数据。基本的$*,执行的情况,大概就是$0 $1 $2 $3…… 那么,那些系统命令里的参数又是怎么做出来的呢?我们自己的脚本如何搞出来$0-$1的效果呢?这就是getopts的作用了。举例如下:#!/bin/bashecho "OPTIND starts at $OPTIND"while getopts ":pq:" optnamedo case "$optname" in "p") echo "Option $optname is specified" 阅读全文
posted @ 2013-02-18 14:53 百小度治哥 阅读(8732) 评论(0) 推荐(1) 编辑

2013年2月7日

摘要: 1)调用系统命令调用SHELL命令nslookup,将执行的结果保存到变量result_nslook中import oscmd='nslookup %s' % hostnamehandle=os.popen(cmd , 'r')result_nslook=handle.read() 调用shell命令但是不需要获取返回结果import oscmd='ls'os.system(cmd) 2)Python 的字符串处理去掉前后空格input = open('hostlist_ip' , 'r')for hostname 阅读全文
posted @ 2013-02-07 17:44 百小度治哥 阅读(9152) 评论(0) 推荐(0) 编辑
摘要: 1。生成随机数 import random #这个是注释,引入模块 rnd = random.randint(1,500)#生成1-500之间的随机数 2。读文件 f = open("c:\\1.txt","r") lines = f.readlines()#读取全部内容 for line in lines print line 3。 写文件 f = open("c:\\1.txt","r+")#可读可写模式 f.write("123... 阅读全文
posted @ 2013-02-07 17:42 百小度治哥 阅读(678) 评论(0) 推荐(0) 编辑
摘要: mysql-python的连接时,默认大家会写成con=MySQLdb.connect(user='xxx',passwd='xxx',host='xxx',port=6600,charset='gbk')一旦指定了"gbk",默认mysql-python会设定use_unicode=True。结果是mysql-python会利用python自己的 codec模块去做字符解码工作,但实际中发现mysql库gbk编码字符集比python的gbk编码集大。一些在mysql里可以存储的字符,拿 python的code 阅读全文
posted @ 2013-02-07 17:34 百小度治哥 阅读(3042) 评论(0) 推荐(1) 编辑
摘要: 在工作中需要将ip地址从整数(如168442432)到以点号分隔的字符串类型(如10.10.58.64)之间的转换,或者反过来从字符串到整数的转 换。这个转换可以使用的方式很多,例如,linux下的C语言编程,调用inet_aton等函数就可以方便的实现(参考man inet_aton)。不过,脚本语言可以提供更加快速的方式实现,在python中,如下:首先: import socket import struct字符串到整数的转换: socket.ntohl(struct.unpack('i',socket.inet_aton("10.10.58.64") 阅读全文
posted @ 2013-02-07 11:26 百小度治哥 阅读(3029) 评论(0) 推荐(0) 编辑
摘要: 首先,什么是函数修饰符?函数修饰符就是对原有函数做一层包装。比如有以下两个函数: 复制代码def func1(): print 'I am function func1' def func2(): print 'I am function func2' 现在我们想为这两个函数增加一段共同的操作,这时就可以使用函数修饰符。首先我们定义一个修饰函数,先不做任何处理,仅仅打印一条横线: 复制代码def de( f ) def call_(): print '-------------------------------' return f() retu 阅读全文
posted @ 2013-02-07 11:14 百小度治哥 阅读(14395) 评论(0) 推荐(0) 编辑

2013年2月5日

摘要: python中有专门的log模块来写日志,如下所示:def initlog():import logginglogger = logging.getLogger() # 生成一个日志对象logfile = 'test.log' # logfile是一个全局变量,它就是一个文件名,如:'crawl.log'hdlr = logging.FileHandler('sendlog.txt') # 生成一个Handler。logging支持许多Handler,象FileHandler, SocketHandler, SMTPHandler等,我由于要写文 阅读全文
posted @ 2013-02-05 18:36 百小度治哥 阅读(5419) 评论(0) 推荐(0) 编辑
摘要: python的正则表达式 re本模块提供了和Perl里的正则表达式类似的功能,不关是正则表达式本身还是被搜索的字符串,都可以是Unicode字符,这点不用担心,python会处理地和Ascii字符一样漂亮。正则表达式使用反斜杆(\)来转义特殊字符,使其可以匹配字符本身,而不是指定其他特殊的含义。这可能会和python字面意义上的字符串转义相冲突,这也许有些令人费解。比如,要匹配一个反斜杆本身,你也许要用'\\\\'来做为正则表达式的字符串,因为正则表达式要是\\,而字符串里,每个反斜杆都要写成\\。你也可以在字符串前加上 r 这个前缀来避免部分疑惑,因为 r 开头的python 阅读全文
posted @ 2013-02-05 00:34 百小度治哥 阅读(19235) 评论(0) 推荐(1) 编辑
摘要: Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。random.randomrandom.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0random.uniform random.uniform的函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果b > a,则生成的随机数n: a <= n <= b。如果 a >b, 则 b <= n <= a。print random.uniform(10,2 阅读全文
posted @ 2013-02-05 00:13 百小度治哥 阅读(473) 评论(0) 推荐(0) 编辑

2013年1月31日

摘要: 1.insert 语法格式为:基本的插入语法:INSERT OVERWRITE TABLE tablename [PARTITON(partcol1=val1,partclo2=val2)]select_statement FROM from_statementinsert overwrite table test_insert select * from test_table;对多个表进行插入操作:FROM fromstatteINSERT OVERWRITE TABLE tablename1 [PARTITON(partcol1=val1,partclo2=val2)]select_sta 阅读全文
posted @ 2013-01-31 11:48 百小度治哥 阅读(531) 评论(0) 推荐(0) 编辑

2013年1月30日

摘要: Hive 是facebook开源的一个基于hadoop框架的查询工具,也就是说,需要用hive的话,就要先安装hadoop。这次是小结一下最近用hive的心得,经验分享。hadoop和hive,pig,hbase的安装配置以后专门另开个连载说比较好。所以,我假设你已经有hive了。1.字段的数据类型。hive实际上为了数据挖掘的需要,对hive表的字段设置了数据类型,对于经常where的,还可以设置index。数据类型分以下几种STRING 不定长字符串TINYINT 3位长整型数SMALLINT 5位长整型INT 10位整型BIGINT 19位整型FLOAT 浮点数DOUBLE 双精度BOO 阅读全文
posted @ 2013-01-30 10:02 百小度治哥 阅读(393) 评论(0) 推荐(0) 编辑

2013年1月29日

摘要: Hive 是什么在接触一个新的事物首先要回到的问题是:这是什么?Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。Hive does not mandate read or written d 阅读全文
posted @ 2013-01-29 17:17 百小度治哥 阅读(4945) 评论(0) 推荐(0) 编辑
摘要: 快过春节了,好久没写东西了人们学习PHP是因为他们要得到一份工作;人们学习Java是因为他们选修了计算机科学这门课;人们学习Python是因为他们爱这门语言,因为他们追寻美,(我相信这对Ruby也是适用的)为什么选择python呢?轻易实现快速学习的梦想深入体会动态语言的妙处立即体验快速开发的快感获得快速实现想法的能力python的特色有哪些?缩进以:作为开始,不必使用;作为结束#作为单行注释 ‘’‘作为多行注释动态类型函数式编程(lambda Map Reduce Filter Eval)生成器yield装饰器AOPCallable (class,object,function,Lambda 阅读全文
posted @ 2013-01-29 16:11 百小度治哥 阅读(264) 评论(0) 推荐(0) 编辑

2012年11月5日

摘要: 在平常的代码中,我们常常需要与时间打交道。在Python中,与时间处理有关的模块就包括:time,datetime以及calendar。这篇文章,主要讲解time模块。在开始之前,首先要说明这几点:在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素。由于Python的time模块实现主要调用C库,所以各个平台可能有所不同。UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间。在中国为UTC+8。DST(Daylight Saving Time)即夏令时。时间戳(t 阅读全文
posted @ 2012-11-05 17:32 百小度治哥 阅读(6543) 评论(0) 推荐(0) 编辑
摘要: 最近在做ip地域准确率识别的东西,各位谁有比较好的方法,请留言,谢谢 阅读全文
posted @ 2012-11-05 15:55 百小度治哥 阅读(453) 评论(0) 推荐(0) 编辑

2012年8月2日

摘要: [ -a FILE ] 如果 FILE 存在则为真。 [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。 [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。 [ -d FILE ] 如果 FILE 存在且是一个目录则为真。 [ -e FILE ] 如果 FILE 存在则为真。 [ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。 [ -g FILE ] 如果 FILE 存在且已经设置了SGID则为真。 [ -h FILE ] 如果 FILE 存在且是一个符号连接则为真。 [ -k FILE ] 如果 FILE 存在且已经设置了粘制位则为真 阅读全文
posted @ 2012-08-02 15:57 百小度治哥 阅读(230) 评论(0) 推荐(0) 编辑

2012年7月26日

摘要: 1. 装饰器入门 1.1. 需求是怎么来的?装饰器的定义很是抽象,我们来看一个小例子。 def foo(): print 'in foo()' foo() 这是一个很无聊的函数没错。但是突然有一个更无聊的人,我们称呼他为B君,说我想看看执行这个函数用了多长时间,好吧,那么我们可以这样做: import time def foo(): start = time.clock() print 'in foo()' end = time.clock() print 'used:', end - start foo() 很好,功能看起来无懈可击。可是蛋疼的 阅读全文
posted @ 2012-07-26 16:42 百小度治哥 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教程。注意:本文基于Python2.4完成;如果看到不明白的词汇请记得百度谷歌或维基,whatever1. 正则表达式基础1.1. 简单介绍正 则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方 法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言 阅读全文
posted @ 2012-07-26 15:45 百小度治哥 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 1 ##装饰器 2 #!/usr/bin/env python 3 4 from time import ctime , sleep 5 6 def tsfunc(func): 7 def wrappedFunc(): 8 print '[%s] %s called' %(ctime(), func.__name__) 9 return func() 10 return wrappedFunc 11 12 13 ... 阅读全文
posted @ 2012-07-26 15:09 百小度治哥 阅读(313) 评论(0) 推荐(0) 编辑

2012年7月25日

摘要: 天一直阴沉沉的,真想早点下班啊。。。。。。 1 #encoding=utf-8 2 import random 3 from sets import Set 4 5 def copyfile(srcfile, dstfile, linenum): 6 """ 7 get linenum different lines out from srcfile at random 8 and write them into dstfile 9 """10 result = []11 ret = False12 ... 阅读全文
posted @ 2012-07-25 16:36 百小度治哥 阅读(7347) 评论(0) 推荐(0) 编辑

2012年7月23日

摘要: 集群为什么那么慢,等的人无语啊。。。。。。1:awk '/555555*/' test打印所有包含模式/555555*/的行2:awk '{print $1}' test打印文件的第一个字段,字段从行的左端开始,以空白符分隔3:awk '{print $1,$3}' test打印文件的第一,第三个字段4:awk '/555555/{print $1,$3}' test打印包含模式/555555/的第一,第三个字段awk原理:1):awk使用一行作为输入,并将这一行赋给内部变量$0,默认时每一行也可以称为一个记录,以换行符结束。2) 阅读全文
posted @ 2012-07-23 17:58 百小度治哥 阅读(4497) 评论(0) 推荐(1) 编辑

2012年7月21日

摘要: __author__ = "zhigege"#python_排序#encoding=utf-8import randomfrom copy import copydef directInsertSort(seq): """ 直接插入排序 """ size = len(seq) for i in range(1,size): tmp, j = seq[i], i while j > 0 and tmp < seq[j-1]: seq[j], j = seq[j-1], j-1 seq[j] = tmp r 阅读全文
posted @ 2012-07-21 19:16 百小度治哥 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 雨一直在下,听着雨声,恢复着数据。。。。。。优点 简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。 易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。 免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个... 阅读全文
posted @ 2012-07-21 19:08 百小度治哥 阅读(7198) 评论(0) 推荐(0) 编辑
摘要: 北京下大雨了,被困公司内。。。。。。内存管理,对于Python这样的动态语言,是至关重要的一部分,它在很大程度上甚至决定了Python的执行效率,因为在Python的运行中,会创建和销毁大量的对象,这些都涉及到内存的管理。小块空间的内存池在Python中,许多时候申请的内存都是小块的内存,这些小块内存在申请后,很快又会被释放,由于这些内存的申请并不是为了创建对象,所以并没有对象一级的内存池机制。 Python内存池全景这就意味着Python在运行期间会大量地执行malloc和free的操作,频繁地在用户态和核心态之间进行切换,这将严重影响Python的执行效率。为了加速Python的执行效率, 阅读全文
posted @ 2012-07-21 13:51 百小度治哥 阅读(1360) 评论(2) 推荐(2) 编辑
摘要: 1 import sys 2 import random 3 from PyQt4 import QtCore, QtGui 4 class Tetris(QtGui.QMainWindow): 5 def __init__(self): 6 QtGui.QMainWindow.__init__(self) 7 self.setGeometry(300, 300, 180, 380) 8 self.setWindowTitle('Tetris') 9 self.tetrisboard = ... 阅读全文
posted @ 2012-07-21 09:52 百小度治哥 阅读(1487) 评论(0) 推荐(0) 编辑
摘要: 周末了,来到公司,空无一人。。。。。。。python没有和C++中static关键字,它的静态方法是怎样的呢?还有其它语言中少有的类方法又是神马?python中实现静态方法和类方法都是依赖于python的修饰器来实现的。class MyClass: defmethod(self): print("method") @staticmethod defstaticMethod(): print("static method") @classmethod def classMethod(cls): print("class method") 阅读全文
posted @ 2012-07-21 08:32 百小度治哥 阅读(674) 评论(0) 推荐(0) 编辑

2012年7月20日

摘要: 周五了,快要休周末了。。。。。。1.__getitem__专用方法1 >>> map = {'name':'c小加'}2 >>> map.__getitem__("name")3 'c\xe5\xb0\x8f\xe5\x8a\xa0'只是重定向到字典,返回字典的值2.__setitem__专用方法1 >>> map = {'name':'c小加'}2 >>> map.__setitem__('monaker' 阅读全文
posted @ 2012-07-20 19:03 百小度治哥 阅读(5811) 评论(0) 推荐(0) 编辑
摘要: 1.取消^M字符 当你FTP一些DOS文件到unix下时,你经常会看见每行文件后面有个讨 厌的^M 字符,有两个简单的方法可以取消它。 用"vi"打开此文件,在Command mode下敲入: :%s/^V^M//g 或者,在UNIX SHELL下敲入: sed 's/^V^M//g' foo > foo.new 2.使用nohup命令 如果你想进程在你退出系统后还能执行,可以使用NOHUP命令 如: % nohup tar -cf /dev/tape /home & 你退出后再重新登录的话,使用'ps'命令可以看到进程还在执行 阅读全文
posted @ 2012-07-20 17:21 百小度治哥 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 1. Sed简介 sed 是 一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处 理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输 出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下介绍的是Gnu版本的Sed 3.02。 2. 定址 可以通过定址来定位你所希望编辑的行,该地址用数字构成,用逗号分隔的两个行数表示以这两行为起止的行的范围(包括行数表示的那两行)。如1,3表... 阅读全文
posted @ 2012-07-20 17:15 百小度治哥 阅读(705) 评论(0) 推荐(0) 编辑

2012年7月19日

摘要: 一.AWK 说明 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义 函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。 awk的处理文本和数据的方式:它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。 awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfr... 阅读全文
posted @ 2012-07-19 22:57 百小度治哥 阅读(524) 评论(0) 推荐(1) 编辑
摘要: Python执行系统命令一般的用到了三种方法,第一种是 os.system(),这个方法比较常用, 使用也简单, 会自动的生成一个进程,在进程完成后会自动退出, 需要注意的是os.system() 只返回命令执行的状态, 并不返回命令执行的结果,例如:import ost1 = os.system('df -h')print 't1=', t1他的输出就是: t1=0其次需要注意的是 os.system()创建的是进程, 会等待命令执行完, 不适合需要常时间等待的命令执行第二种是os.Popen(), 相对上一个命令, 他能得到命令执行的输出, 但是他的问题也是 阅读全文
posted @ 2012-07-19 11:31 百小度治哥 阅读(3858) 评论(0) 推荐(0) 编辑

导航