python实现grep
import sys
import os
import re def usage():
print "[Usage]: python grep.py filename grepString." if len(sys.argv) != 3:
usage()
sys.exit(1) if os.path.isfile(sys.argv[1]):
pass
else:
usage()
sys.exit(2) f = open(sys.argv[1])
content = f.read()
f.close()
s = "\n".join(re.findall(sys.argv[2]+'.*', content))
print s
【实现思路】
1. 读入文件;
2. 利用python的正则表达式模块,查找匹配字符串;
python实现grep的更多相关文章
- Python之协程(coroutine)
Python之协程(coroutine) 标签(空格分隔): Python进阶 coroutine和generator的区别 generator是数据的产生者.即它pull data 通过 itera ...
- python调用shell命令
1.subprocess介绍 官方推荐 subprocess模块,os.system(command) 这个废弃了 亲测 os.system 使用sed需要进行字符转义,非常麻烦 python3 su ...
- saltstack高效运维
saltstack高效运维 salt介绍 saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的远程执行系统. salt强大吗 系统管理员日常会 ...
- ubuntu14.04+MatlabR2014a+caffe
一.下载matlab 1 sudo mkdir /media/matlab 2 sudo mount -o loop [path]MATHWORKS_R2014A.iso /media/matlab ...
- review-反思当程序猿的小一年来
误打误撞进入这个行业,也算是缘分把,不到一年的时光里,剖析一下自己,别写了半天代码,学了一堆东西,不知道干嘛.反省一下. 1.目标与知识库 就目前在我看来,是想成为一名优秀的数据工程师,掌握全栈数据分 ...
- 17,saltstack高效运维
salt介绍 saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的远程执行系统. salt强大吗 系统管理员日常会进行大量的重复性操作,例如安 ...
- Python基础-面向过程编程实现Linux下cat -rl ‘dir’ |grep ‘keywords’ 功能
函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...
- regular expression, grep (python, linux)
https://docs.python.org/2/library/re.html re.match(pattern, string, flags=0) 尝试从字符串的起始位置匹配一个模式 re.s ...
- Python练习-迭代器-模拟cat|grep文件
代码如下: # 编辑者:闫龙 def grep(FindWhat): f=open("a.txt","r",encoding="utf8") ...
随机推荐
- Spring MVC注解入门
注解式开发初步 常用的两个注解: @Controller:是SpringMVC中最常用的注解,它可以帮助定义当前类为一个Spring管理的bean,同时指定该类是一个控制器,可以用来接受请求.标识当前 ...
- php字符串匹配
$a='abcdef'; $b='abc'; similar_text($a,$b,$num); $num=3;
- activemq 控制面板里的 Number Of Pending Messages、 Messages Enqueued、Messages Dequeued含义
Number Of Consumers 消费者 这个是消费者端的消费者数量 Number Of Pending Messages 等待消费的消息 这个是当前未出队列的数量.可以理解为总接收数-总出队 ...
- flume使用示例
flume的特点: flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受 ...
- C++ 代码优化
1.类中所有的属性全部设置为private 然后在需要在外部调用的属性,每个都自己写Get方法返回,或者用Set方法设置 2.类成员变量采用m_前缀,代表类成员 3.采用单例模式 //设置类名为CCo ...
- 基于dubbo的分布式项目实例应用
本文主要学习dubbo服务的启动检查.集群容错.服务均衡.线程模型.直连提供者.只定阅.只注册等知识点,希望通过实例演示进一步理解和掌握这些知识点. 启动检查 Dubbo缺省会在启动消费者时检查依赖的 ...
- 【统计学习】主成分分析PCA(Princple Component Analysis)从原理到实现
[引言]--PCA降维的作用 面对海量的.多维(可能有成百上千维)的数据,我们应该如何高效去除某些维度间相关的信息,保留对我们"有用"的信息,这是个问题. PCA给出了我们一种解决 ...
- myeclipse 无法启动
1.对项目中的一个文件重新命名,导致卡死,结束myeclipse进程不管用,重启不管用. 删除工程下的文件 以 .markers.snap 和 marker开头的两个文件 位置: 工作空间\ ...
- Code Complete 笔记—— 第一章
软件的构建的主要流程: 定义问题 ( Problem Definition) 需求分析 (Requirements Development) 规划构建 (construction planning) ...
- SOAPUI使用教程-入门REST测试
首先,通过选择文件菜单中的“新建REST项目”选项创建从文件菜单中一个新的REST项目: 指定服务端点场下谷歌地图API网址: http://maps.googleapis.com/maps/api/ ...