没有合适的资源?快使用搜索试试~ 我知道了~
dokelung#Python-QA#用Python實現類似grep的功能1
需积分: 0 0 下载量 20 浏览量
2022-07-25
14:31:59
上传
评论
收藏 4KB MD 举报
温馨提示
如果你堅持想要使用 Python,我寫了一個應該是比較優化的代碼,你可以參考一下:logname = logname or os.devnullwith ope
资源推荐
资源详情
资源评论
# 用 Python 實現類似 grep 的功能
## 問題
一個草圖:
![图片描述][1]
現實現在文件夾和子文件夾下查找目標字串,
但不知如何提取包含目標字符的字串,並寫入到新文件中。
[1]: https://segmentfault.com/img/bVyX2e
```python
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import os, sys
import fnmatch
listonly = False
skipexts = ['.js']
def visitfile(fname,searchkey):
global fcount,vcount
try:
if not listonly:
if os.path.splitext(fname)[1] in skipexts:
if open(fname).read().find(searchkey) != -1:
print '%s has %s '%(fname,searchkey)
fcount+=1
except: pass
vcount +=1
def visitor(args,directoryName,filesInDirectory):
for fname in filesInDirectory:
# 返回文件所在路径和文件名
fpath = os.path.join(directoryName,fname)
if not os.path.isdir(fpath):
visitfile(fpath,args)
def searcher(startdir,searchkey):
global fcount,vcount
fcount = vcount = 0
os.path.walk(startdir,visitor,searchkey)
if __name__=='__main__':
# root=raw_input("type root directory:")
root = '/home/jiangbin/findJS'
key=raw_input("type key:")
searcher(root,key)
print 'Found in %d files,visited %d'%(fcount,vco
点击阅读更多
资源评论
玛卡库克
- 粉丝: 35
- 资源: 309
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功