引言
平时工作时,有时会遇到这样的情景:在一个目录及其子目录下所有的文本文件中查找某个关键字、词或者完整的句子。当然,如果是在Linux
平台上,find+egrep
就能实现这样的功能。不过最近学习了Python tkinter
相关的知识,自然是想做出一款带有界面的小工具,可以跨平台使用。所以,本文介绍的小工具,主要就是为了巩固学习到的Python tkinter
知识,同时也是为了方便自己。
涉及的 Python 及 tkinter 的知识
-
os.walk
函数:负责遍历目录下所有的文件;
-
mimetypes.guess_type
函数:负责给出文件的类型,从而过滤出非文本文件;
-
Listbox
组件的使用及鼠标双击事件的绑定;
-
pack
布局;
-
生产者+消费者 线程模型,主线程(GUI)负责消费来自后台线程搜索得到的文件路径结果,并及时显示出来;
-
Ubuntu
平台下,使用os.system('nautilus file_path)'
定位到指定的文件。
功能
- 在指定目录及其子目录下所有的文本文件中查找关键字、词和句子;
- 在
Ubuntu
上