全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Python实现Linux的find命令实例分享

使用Python实现简单Linux的find命令

代码如下:

#!/usr/bin/python

#*-*coding:utf8*-*

from optparse import OptionParser

import os

import sys

#使用选项帮助信息可以使用中文

reload(sys)

sys.setdefaultencoding("utf-8")

#定义选项以及命令使用帮助信息

usage = sys.argv[0] + " Directory Options\n\n例:"+sys.argv[0] + " /etc --type f --name passwd\n\n注意:选项和目录益可随意调换,可以写多个目录,会从多个目录中进行查找"

parser = OptionParser(usage)

parser.add_option("--type",

dest="filetype",

action="store",

default=False,

help="指定查找对象的类型,文件类型可以是 d:代表目录 f:代表文件")

parser.add_option("--name",

dest="name",

action="store",

default=False,

help="指定查找对象的名称,文件或目录全名")

options, args = parser.parse_args()

def find(dir):

directory = os.walk(dir)

for x, y, z in directory:

if options.filetype == "f":

for name in z:

if name == options.name:

path = os.path.join(x,name)

print(path)

if options.filetype == "d":

for name in y:

if name == options.name:

path = os.path.join(x,name)

print(path)

#判断目录是否存在,并且是否为目录

for dir in args:

if os.path.exists(dir) == False:

sys.stderr.write(dir+" is not found\n")

exit(100)

if os.path.isfile(dir):

sys.stderr.write(dir+" is a file\n")

exit(101)

#判断--type选项是否正确,只能跟 f 或者 d

if not (options.filetype == "f" or options.filetype == "d"):

sys.stderr.write("--type only support d or f\n")

exit(102)

if __name__ == "__main__":

for dir in args:

find(dir)

运行结果如下:


# python  # find命令  # python模拟find命令  # 实现linux的find命令  # linux find命令将查找到的文件批量删除方法  # 详解Linux下find查找文件命令和grep查找文件命令  # Linux 命令find之查找文件的示例  # 详解Linux中两个查找命令locate和find教程  # Linux下find和grep常用命令及区别介绍  # Linux中find命令的用法汇总  # Linux find命令及实用示例详解  # 多个  # 可以使用  # 是否存在  # 是否正确  # 目录中  # setdefaultencoding  # utf  # reload  # sys  # os  # type  # passwd  # import  # Options  # usage  # argv  # Directory  # brush  # py  # usr 


相关文章: 哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  香港服务器部署网站为何提示未备案?  活动邀请函制作网站有哪些,活动邀请函文案?  建站之星2.7模板:企业网站建设与h5定制设计专题  已有域名建站全流程解析:网站搭建步骤与建站工具选择  建站之星备案流程有哪些注意事项?  ui设计制作网站有哪些,手机UI设计网址吗?  如何快速上传建站程序避免常见错误?  建站VPS推荐:2025年高性能服务器配置指南  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  上海网站制作开发公司,上海买房比较好的网站有哪些?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  如何用5美元大硬盘VPS安全高效搭建个人网站?  网站图片在线制作软件,怎么在图片上做链接?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  文字头像制作网站推荐软件,醒图能自动配文字吗?  重庆市网站制作公司,重庆招聘网站哪个好?  如何快速搭建自助建站会员专属系统?  重庆网站制作公司哪家好,重庆中考招生办官方网站?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  建站三合一如何选?哪家性价比更高?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  如何自定义建站之星网站的导航菜单样式?  建站主机是什么?如何选择适合的建站主机?  如何在阿里云ECS服务器部署织梦CMS网站?  如何在橙子建站中快速调整背景颜色?  建站之星安装路径如何正确选择及配置?  建站DNS解析失败?如何正确配置域名服务器?  建站之星代理平台如何选择最佳方案?  Swift中switch语句区间和元组模式匹配  宝塔建站无法访问?如何排查配置与端口问题?  制作网站的软件免费下载,免费制作app哪个平台好?  建站之星微信建站一键生成小程序+多端营销系统  如何用y主机助手快速搭建网站?  小程序网站制作需要准备什么资料,如何制作小程序?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  简单实现Android验证码  南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  如何快速上传自定义模板至建站之星?  如何使用Golang table-driven基准测试_多组数据测量函数效率  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  在线制作视频的网站有哪些,电脑如何制作视频短片? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。