在目录中查找指定的字符串

查找目录下指定字符串脚本(资源已经附上) 我有时候要在 .java 文件里面找有没有写某个单词或者 .kt文件有没有写某个单词又或者 .string文件里面有没有某个单词,我能不能通过dj(指定自己编写的单词)字符串 文件格式的方式将单词和文件格式作为参数来查找呢,于是我想到自己去写一个脚本来方便自己执行查找命令。 阅读详情
# -*- coding: cp936 -*-
'''在python中查找字符串,如果文件中包含指定的字符串,
则将此字符串所在的行号和文件名称打印出来,不支持正则表达式,
演示了walk使用方法;
演示了fileinput使用方法
'''
import os
# 使用walk来遍历目录
def processFiles(arg,dirpath,files):
    
'''walk函数的回调函数,
    查找满足条件的文件,使用fileinput对文件进行搜索,
    如果查找到关键字,打印出行号和文件名称
'''
    
for f in files:
        fname 
= os.path.join(dirpath,f)
        
if(os.path.isfile(fname)):
            
if os.path.splitext(fname)[1] == '.py':
                
import fileinput
                
import sys
                
# 使用fileinput来遍历文件,如果有Tk则将此【行号:文件名称】插入搜索结果列表框
                for line in fileinput.input(fname):
                    
# 在这里使用vTextFind,查找指定的字符串
                    if line.find(root.vTextFind.get()) != -1:
                        root.lbResults.insert(END,
"[%d]:[%s]" % (fileinput.lineno(),fname))

def updateListbox(master):
    
'''搜索按钮的事件处理函数,
    这个函数调用walk来遍历目录,并将搜索结果插入列表框
'''
    
print master.vDirSearched.get()
    master.lbResults.delete(0,END)
    os.path.walk(master.vDirSearched.get(),processFiles,
'')

from Tkinter import *
root 
= Tk()
# 创建搜索路径,并绑定变量,默认路径为当前'.'
Label(root,text = 'Directory to be searched').grid(row = 0,column = 0)
root.vDirSearched 
= StringVar()
root.vDirSearched.set(
'.')
root.etDirSearched 
= Entry(root,textvariable = root.vDirSearched)
root.etDirSearched.grid(row 
= 0,column = 1)

# 创建要搜索的字符串,默认搜索为'Tk'
Label(root,text = 'text to find').grid(row = 1,column = 0,stick = W)
root.vTextFind 
= StringVar()
root.vTextFind.set(
'Tk')
root.etTextFind 
= Entry(root,textvariable = root.vTextFind)
root.etTextFind.grid(row 
= 1,column = 1)

# 创建搜索按钮
root.btSearch = Button(root,
                       text 
= 'Search',
                       command 
= lambda
                       arg1 
= root:
                       updateListbox(arg1)
                       )
root.btSearch.grid(row 
= 2,column = 0,columnspan = 2,stick = E + W)
# 创建搜索结果列表
root.lbResults = Listbox(root)
root.lbResults.grid(row 
= 3,column = 0,columnspan = 2,stick = E + W + N + S)

root.mainloop()
 
DASH 流媒体协议(Dynamic Adaptive Streaming over HTTP)概述——起源、MPD文件解析、相关项目 简单介绍DASH的起源与发展、MPD文件简要解析、相关项目,以及常见流媒体协议的比较 阅读详情

相关推荐

PCL1.12.1+VTK9.1+Qt5.14.2实战:解决QVTKOpenGLNativeWidget点云渲染窗口初始化报错问题

本文针对PCL1.12.1、VTK9.1与Qt5.14.2集成开发中,QVTKOpenGLNativeWidget点云渲染窗口初始化时出现的报错与黑屏问题,提供了深度分析与两种实战解决方案。核心在于理解VTK版本升级导致的渲染窗口类型不匹配,并指导开发者通过显式创建vtkGenericOpenGLRenderWindow或利用窗口ID嵌入,正确初始化并绑定可视化组件,从而稳定实现点云渲染。

weixin_29284657的博客 221

模式字符串查找(支持通配符‘*’)

模式字符串查找(支持通配符‘*’) 【问题描述】 在当前目录下的文件string.in中查找给定的字符串,并将查找到的字符串和行号输出到当前目录下的文件string.out中。要求: 1)从键盘输入给定的字符串,该字符串中只包含大小写字母、数字字符、中括号字符'['和']'、'*',以及字符'^'。字符串的长度不超过20。 2)字符'^'只能出现在中括号内,且只能作为中括号内的第一个字符出现。除了字符'^',中括号中至少包含一个以上的字母或数字。 3)字符*不会出现在中括号内 4)在给定字符串中,中括号最多

谛凌的博客 4万+

车辆TBOX科普 第64次 TBOX系统集成测试与文档编写

汽车电子开发中,TBOX作为核心网关面临独特挑战:需处理多网络接口、满足严苛安全标准并确保10年以上可靠性。项目文档是开发流程的核心资产,必须与编码同步更新,构建从需求到测试的完整闭环。系统集成测试需分层进行,结合硬件在环测试和自动化工具,并严格管理缺陷。文档与测试深度协同,通过追溯矩阵确保每个需求都被覆盖验证。最终交付不仅是软件包,更是一套包含完整验证报告的信任体系。这种严谨的工程纪律,是将代码转化为车规级可靠产品的关键保障。

IT深耕十余载,大道之简 1317

【数据结构】模式字符串查找(支持通配符‘*’)

在当前目录下的文件string.in中查找给定的字符串,并将查找到的字符串和行号输出到当前目录下的文件string.out中。

qq_45314905的博客 1655

yolov5 部署jetson nano(通用) 保姆级教学

Jetson nano从配置环境到yolov5成功推理检测全过程 文章目录Jetson nano从配置环境到yolov5成功推理检测全过程一、烧录镜像二、配置环境并成功推理1.更新系统和包2、配置环境2.1 配置CUDA2.2 修改Nano板的显存1.打开终端输入:2.修改nvzramconfig.sh文件:3.重启:4.终端输入:3、安装archiconda(也就是jetson nano板上的anaconda)1.下载地址:2.安装:3.测试conda:4.创建运行yolov5的虚拟环境:5.在conda

weixin_44312422的博客 3万+

Blender学习笔记——制作向量场

#下载Blender - UE4 - FGA Vector Field Editor插件的压缩包,Github上的下载地址如下:https://github.com/isathar/Blender_UE4_VectorFieldEditor #下载并解压后将FGA VectorFields文件夹复制到C:\Program Files\Blender Foundation\Blender 2.83\2.83\scripts\addons目录下,此步骤可根据blender安装的位置自行调整,只要放入addon

wychao2020的博客 1723

在某文件中或某目录下文件里找到指定字符串,并将包含该字符串的所有行和行号打印出来

在某文件中或某目录下文件里找到指定字符串,并将包含该字符串的所有行和行号打印出来

Ally441的博客 1127

一篇文章认识《双目立体视觉》

双目立体视觉,由两个摄像头组成,像人的眼睛能看到三维的物体,具有深度的信息;单目视觉只能看到二维的物体。 1)双目摄像头 2)双目相机基线 3)打开双目摄像头 4)双目测距 视差disparity、 极线约束、 极线校正/立体校正、 a.双目标定 b.双目矫正 c.立体匹配 d.双目测距(三角测量) e.测距效果 立体视觉方法评测网站

黎国溥 7958

在指定路径或者是文件名查找指定的字符串

采用WINDOWS的内容查找,居然只支持文本文件,不支持如JSP等文件。那就自己写一个吧,感觉还可以,将所以包含查找字符串的全路径都打印出来,这样就能够一目了然了。源程序如 下:   import java.io.BufferedReader; import java.io.File; import java.io.FileReader; public class SearchInJ

冯立彬的博客 1万+

手把手教你学Simulink--电机控制架构与算法实现​场景示例:基于Simulink的电机速度环PID调节仿真

本文带你完成了电机速度环PID参数的科学整定,实现了:✅ 理解了速度环的级联系统特性与关键参数影响工程整定法(理论初值)系统辨识法(参数未知时)✅ PID Tuner自动调参(推荐!自动调参兼具快速性与鲁棒性✅ 学会了前馈补偿抗饱和等工程实用技巧。

MHD0815的博客 653

【异常】Openclaw Gateway进程异常停止问题分析与解决方案

本文分析了Gateway服务异常停止的问题,提出了三种解决方案。核心问题是缺乏进程守护和自动恢复机制,导致服务崩溃后无法自行重启。推荐方案是使用PM2进程管理工具(方案1),提供进程监控、自动重启和开机自启功能。替代方案包括自定义守护脚本(方案2)和supervisord管理(方案3)。这些方案都能有效解决当前服务脆弱性问题,显著提升服务可用性,其中PM2方案成熟度高、配置简单,是首选解决方案。实施后可将服务从人工干预转变为自动恢复,确保业务连续性。

奶爸的编程之路,也就一周冷个三天 455

在特定目录下查找特定字符串

#!/bin/sh #findstring.sh printf "Usage:sh find_string.sh " directory=$1 fstring=$2 for file in $( find $directory -type f -name '*' | sort) do strings -f $file | grep "$fstring" | sed -e "s%$dir

xumesang的专栏 424

【软件系统架构】系列六: SysML(系统建模语言)

SysML(系统建模语言)是OMG组织基于UML扩展的专用建模语言,用于支持复杂系统全生命周期建模。它包含9类标准图,核心建模元素包括块(Block)、端口接口、需求和约束等。与UML相比,SysML更适用于软硬件结合的复杂系统建模。作为MBSE的核心工具,SysML通过结构图、行为图、需求图和参数图实现系统设计、需求追踪和性能验证。虽然面临学习门槛高、工具成本高等挑战,但随着AI融合和国产化替代趋势,SysML在航空航天、汽车电子等领域的应用日益广泛。SysML v2将简化语法并提升互操作性,推动系统工程

moton2017的博客 2384

linux查找指定目录下包含指定字符串文件,包含子目录

linux查找指定目录下包含指定字符串的文件,包含子目录 linux查找指定目录下包含指定字符串的指定文件格式,包含子目录

G佳伟 1628

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Linux在指定目录下查找包含指定字符串的文件

第一种方法: #!/bin/bash echo -e "\nThis is a program to find the file in special directory which include keyword!\n\n" if [ "$1" == "" ];

6655

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

linux中查找指定字符串并输出到指定目录

linux中查找指定字符串并输出到指定目录 grep -nr --exclude-dir=".svn" ttyS1 *  >> text.txt

htjx99的专栏 1415

linux查找指定文件字符串,[shell]Linux在指定目录上查找包含指定字符串的文件

[shell]Linux在指定目录下查找包含指定字符串的文件#!/bin/bashecho -e "\nThis is a program to find the file in special directorywhich include keyword!\n\n"if [ "$1" == "" ]; thenecho -e"Please input the keyword behind the...

weixin_35697651的博客 668

从指定目录查找给定字符串是否存在

从指定目录查找给定字符串是否存在 从指定文件夹读取文件 /** * 从指定文件夹读取文件 * * @param sourcePath 指定的源文件夹路径 * @param list x * @throws Exception x */ public static void getFilesFromPath(String sourcePath, List<File> list) throws Exception

brooks1024的博客 279

在当前目录下递归的查找包含指定字符串的文件

题目 编写一个程序:1、能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件;2、并打印出相对路径。 思路 1. 这道题目是要用到递归的,递归中return的陷阱,请参考上篇博文《python递归中的return"陷阱"》 2. 涉及到正则的部分考虑用re.serach方法 3. 可以先匹配到目录或文件,返回文件名/目录名,后续再优化 4. 优化:过滤目录的匹...

anywen5590的博客 1059

centos下查找目录下的所有文件中是否包含指定字符串

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34242509的博客 4205

python在给定的目录下查找文件中是否包含指定的字符串

写作防止遗忘。 这个小demo的作用是在给定的目录下,查找所有的文件中是否包含你需要查找的字符串。类似于Linux的grep -rn <string>命令。demo中主要用到了os模块,第一个输入为你要查找的字符串,第二个给定一个路径,可以是绝对路径,也可以是相对路径,实现起来比较简单。 import os text = input("input text : ") path = input("path : ") flag = 0 def getfiles(path): #.

weixin_45183067的博客 6493

查找当前目录下面含有指定字符串的文件

查找当前目录下含有指定字符串的文件 find . -type f -exec grep "the string you want find…" {} ; -print 查找指定文件中含有特定字符串的行 find . | grep config.xml | xargs grep "specified field" 查找当前目录中包含指定字段的所有文件 grep -RnI "spec...

杜继恒的博客 2065

sed查找文件包含字段_Linux在指定目录下查找包含指定字符串的文件

第一种方法:#!/bin/bashecho -e "\nThis is a program to find the file in special directorywhich include keyword!\n\n"if [ "$1" == "" ]; thenecho -e "Please input the keyword behind the$0\.\n\n"exit 0fikeywor...

weixin_32338107的博客 476

java实现在指定目录中查找字符串

转自:http://symphony.b3log.org/article/1368190290825

蓝不蓝编程 1138

linux 在指定目录中,查找指定字符串

这个命令会在指定目录下递归地查找包含字符串 ‘site’ 的文件,并显示出匹配行的上下文,其中。替换为您实际的目录路径。如果想在当前目录下查找,可以将路径设置为。表示显示匹配行的前后 5 行内容。

yunis 518

在指定目录下查找包含指定字符串的文件

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

weixin_45595778的博客 1146
上一篇: 一个时钟程序'
下一篇: 目录文件备份工具
jcodeer
博客等级 码龄22年 272粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值