如何提高运维团队的运维效率?

       如何运行一个庞杂的机房,进行无数的主动和被动的操作,同时避免错误导致的数据中心故障?
  1、以终为始
  以终为始是一种以结果为导向的思维方式,提示人们在做事情前要先明确做事情的最终目的,也就是“不忘初心,方得始终”。数据中心的终极目标是支持业务系统的不间断运行。在接手一个数据中心的运维任务之前,我们首先需要明确业务连续性目标,然后才能制定相应的运维策略。
  2、以人为本
  70%的数据中心故障是由人为造成的。与此同时,即使有最先进的监控系统,数据中心内无论主动保养操作,还是应急反应,都还需要依赖于人员的最终决策和操作。所以,配备足够的人员、有责任心、经验丰富的人员、对于数据中心的安全运行至关重要。
  3、培训与学习
  学习是一种修炼。有一种说法“最好的运维团队只不过是犯了足够的错误就修炼出来的”。数据中心基础设施牵涉到电力、暖通、弱电、消防、建筑等诸多专业,对于数据中心运维团队来说,需要学习的专业知识非常多。同时,每一个数据中心的配置和特定的操作流程都不完全相同。因此,培训与学习应该成为运维团队管理的一个重要组成部门。
  4。建立管理体系
  数据中心基础设施的运维管理工作的管理对象包括整个庞大的基础设施、运维团队、服务对象(IT部门或者IDC客户),是一项系统性很强的工作,需要建立起一个管理体系。在整个运维管理系统体系中最重要的三个方面是设备保养体系、与所有相关部门的沟通机制、以及支持整个数据中心生命周期管理的财务预算体系。
  5。规范操作流程
  任何规范化的企业管理,都不可避免地需要引入流程,数据中心运维管理也不例外。完全基于个人经验和判断的操作,往往隐藏着重大的故障风险。数据中心就是要强化流程管理。任何重要的操作,必须严格按照流程执行。建立流程文化是数据中心规范化管理的一个重要环节。数据中心最重要的三类流程是标准操作流程(SOP),维护保养操作流程(MOP),和应急相应流程(EOP)。
  6。动态管控
  除了之前提到的管理体系和操作流程这些相对静态的工作以外,数据中心还需要进行动态的管控。近几年,IT负载的动态性表现得越来越明显。一方面,IT设备的增加速度比较快。新的业务系统上线可能导致IT负载在短期内有较大的增加。另一方面,企业大量采用虚拟化技术以后,可能会出现机房内各机柜的IT负载在一天范围内有较大变化的情况。基础设施运维团队需要针对这种IT负载的动态性作出相应的对策。
  7。持续改善
  大型数据中心的出现只是近几年的事情。当数据中心超过一定规模的时候,管理变得复杂,已经超越原来简单的依赖于少数运维人员的责任心的时代,需要的是完整的管理思想和方法论。国内数据中心基础设施运维体系的成熟度大致处于三个等级的状态:基础级、成长级、文化级。
    8、用运维管理工具
     实践已经证明,用一个优秀的运维管理系统可以大幅度的提升运维管理效率。可以理顺运维流程,并对每一个运维事件进行时间限制。督促运维工程师解决故障。另外,运维经理可以从PC或者移动端随时关注运维事件的进程。运维管理工具的知识库、配置管理、拓扑图、监控管理等功能,也是提升运维效率的有效功能。

漫谈IT项目团队管理心得(转)

 如果在软件项目实施中选出最难解决的几个问题,那么管理问题一定名列前茅。在管理问题中,团队管理又是其中的难点。一个项目管理的好坏,很大程度就体现在团队的建设和管理上。团队管理涉及到管理学、心理学和哲学等诸多方面内容,具体实施起来还容易产生许多误区,因此,对项目主管的综合素质要求颇高。笔者进入项目管理领域的时间尚短,最近读了一些书籍,结合自己的一些经验,汇成一些心得体会,愿与朋友们共同提高。 
  1、什么是团队管理? 
  举个简单的例子:如果有一车沙从大厦顶上倒下来,对地面的冲击是不太大的,如果把一整车已凝固成整块的混凝土从大厦上倒下来,其结果就大不一样。团队管理就是把一车散沙变成已凝固成整块的混凝土,将一个个独立团队成员变成一个坚强有力的团体,从而能够顺利完成项目的既定目标。 
  沙土需要搭配石头、钢筋和水泥等才能形成混凝土,在团队建设中同样如此。每个成员的知识结构、技术技能、工作经验和年龄性别按比例的配置,达到合理的互补,决定了这个团队的基本要素。 
  有了沙土等基本要素,是否就一定是混凝土呢?没有水,没有搅拌,就还不行。混凝土中的水就是一种良好的团队氛围,团结信任积极向上的工作气氛。具备了这种气氛,意味着项目成功了一半。 
  项目主管在团队管理中相当于搅拌机的作用,组织会议、讨论、学习、攻关和休闲等活动,与成员之间形成良好的沟通,最终能形成明智的决策。 
  2、制定良好的规章制度 
  小头目管事,大主管管人。在项目规模小的时候,项目主管既要是技术专家,善于解决各种各样的技术问题,还要通过传帮带的方式实现人管人;在项目规模较大的时候,项目主管必须通过立规矩、建标准来实现制度管人。 
  所谓强将手下无弱兵,没有不合格的兵,只有不合格的元帅。一个强劲的管理者首先是一个规章制度的制定者。规章制度也包含很多层面:纪律条例、组织条例、财务条例、保密条例和奖惩制度等。好的规章制度可能体现在,执行者能感觉到规章制度的存在,但并不觉得规章制度会是一种约束。 
  执行规章制度还有一些考究,记得网上流行一个破窗理论:如果有人打破了一个建筑物的窗户玻璃,而这扇窗户又得不到及时的修理,别人就可能受到某些暗示性的纵容去打烂更多的窗户玻璃。久而久之,这些破窗户就会给人造成一种无序的感觉。这个理论说明,对于违背规章制度的行为,应该及时制止,否则长期下来,在这种公众麻木不仁的氛围中,一些不良风气、违规行为就会滋生、蔓延且繁荣。 
  项目主管虽然是规章制度的制定者或者监督者,但是更应该成为遵守规章制度的表率。如果项目主管自身都难以遵守,如何要求团队成员做到? 
  3、建立明确共同的目标 
  先讲个故事:一条猎狗将兔子赶出了窝,一直追赶他,追了很久仍没有抓到。一牧羊人看到此种情景停下来,讥笑猎狗说:“你们两个之间小的反而跑的快很多。”猎狗回答说:“你们不知道我们两个跑是完全不同的!我仅仅为了一餐饮而跑,而他却为了性命而跑呀。” 
  这个寓言揭示了:兔子与猎狗做一样的事情,都拼命的跑步,然而,他们的目标是不一致的,其目标不一致,导致其动力也会不一样。在团队管理中,不同角色的成员的目标是不一致的。项目主管直接面向客户,需要按照承诺,报质保量地按时完成项目目标。项目成员可能是打工者心态,我干一天你要支付我一天的工资,加班要给奖金,当然干项目能学到新知识新技能就更好。 
  团队中不同角色由于地位和看问题的角度不同,对项目的目标和期望值,会有很大的区别,这是一点也不奇怪的事情。好的项目主管善于捕捉成员间不同的心态,理解他们的需求,帮助他们树立共同的奋斗目标。劲往一处使,使得团队的努力形成合力。当然,在具体实施上可能会遇到一些问题。比如说员工持股问题,本来是把员工的利益与公司的利益捆绑在一起的问题,但是操作起来就可能会走样。A为一高科技企业的研发经理,他所在的公司实行员工持股制度,他说:中国搞员工持股根本就没有吸引力,上不了市,我们手中的股票和垃圾没有区别,老板搞员工持股,还是网不住这些骨干员工的。 
  笔者看来,项目主管也许还没有调配员工股的权利,但是可以给员工规划出一个好的发展远景和个人的发展计划,并使之与项目目标相协调。 
  4、营造积极进取团结向上的工作氛围 
  假如项目缺乏积极进取团结向上的工作氛围,项目成员的力量就很难合在一起,大家相互扯皮推诿指责,项目也就不可能成功。 
  钓过螃蟹的人或许都知道,篓子中放了一群螃蟹,不必盖上盖子,螃蟹是爬不出去的,因为只要有一只想往上爬,其它螃蟹便会纷纷攀附在它的身上,结果是把它拉下来,最后没有一只能够出去。企业里常有一些人,嫉妒别人的成就与杰出表现,天天想尽办法破坏与打压,如果不予去除,久而久之,组织里只剩下一群互相牵制、毫无生产力的螃蟹。 
  对于项目组中的不知悔改的螃蟹,应该尽早清理出去。对于公司而言,也许历史尚短,还没有形成成熟的企业文化和企业精神,从而造成大环境的不良风气,但是在项目组内部,通过大家的一致努力,完全可能营造出一个积极进取团结向上的工作氛围。 
  项目主管为了酿造这种氛围,需要做这些努力:奖罚分明公正,对于工作成绩突出者一定要让其精神物质双丰收,对于出工不出力者受到相应的惩罚;让每个成员承担一定的压力,项目主管不应该成为“所有的苦,所有的累,我都独自承担”的典型,项目主管越轻松,说明管理得越到位;在学术问题讨论上,要民主要平等,不做学霸不搞一言堂,充分调动每个成员的积极性。在生活中,项目主管需要多关心多照顾项目组成员,让大家都能感受到团队的温暖。 
  5、良好的沟通能力是解决复杂问题的金钥匙 
  由于每个人的知识结构和能力的区别,导致对于同一问题的认识很出现相应的偏差。 
  举个简单的例子,在软件设计中,B和C之间有接口。项目主管在给B和C分配任务时,就可能讲到了这个接口,但是B和C由于理解上出现不一致,导致在调试过程中出现问题。在这种时候,项目主管就需要具备良好的沟通能力,并能迅速判断到底谁的理解出了问题,把B和C的理解提升到同一层次。 
  在现实研发中,会经常出现接口问题,在实际工程项目中,还会经常出现客户对项目需求的更改要求,估计这也是每个项目主管都非常头疼的问题。项目已经进行到了收尾阶段,客户发现现实需求已经发生变化,需要项目组做大幅度的调整。项目主管要是不管不顾,这个项目可能就毫无意义;项目主管要是按照客户需求来调整项目目标,这个项目就可能拖期,超过预算。在这种时候,项目主管与公司高层,与客户之间的沟通能力就极其重要,良好的沟通能力将有助于解决这类复杂问题。 
  6、团队管理的几个误区 
  团队管理的误区是指在团队管理中对团队的发展产生负面影响的行为,这些行为严重的时候可能会颠覆一个团队。 
  常见的团队管理误区有以下一些:团队缺少关键技能和知识及解决办法;团队的计划不连贯;团队成员的傲慢情绪;团队分工不清,人员责任不明;团队总是追求短期目标;团队中经常有制造混乱的成员;团队成员之间缺少协同工作的习惯等。 
  解决团队管理误区的措施: 
      * 提高团队的开发能力 
  让全体成员分享所有相关的商务信息(商务秘密除外),而且要保证团队成员完全明白这些信息;强化团队发现问题和解决问题的能力;提高团队的整体决策能力。 
  * 避免短视行为 
  要确保所有团队成员对该组织、其目标和其结构有一个基本的认识。团队成员如果不具备关于团队的基本知识,自然难以认识到一个决议对其他团队和整个公司会带来的潜在影响。团队成员接受的全局观点越强,他们在做决策时对整个工作的考虑就会越多,就更能克服近视倾向。 
  * 工作重点和工作能力 
  项目主管可能不是技术专家,所以主管的工作重点是调动团队成员的积极性,为解决技术问题创造充分的条件。一个缺少基本技术技能的团队很容易出现问题,而有着良好基础但并不继续获取和使用新知识的团队,也会在将来陷入困境。 
  * 快刀乱斩麻的魄力 
  要想在当今时代保持一定的竞争力,经营机构在决策和实施决策计划时必须当机立断;任何延误都会造成严重后果。当决策完全陷入僵局时,应该提出这样一个问题:“今天不做决定会有什么样的后果?”或者“如果我们今天无法做出决定,事情会发展成什么样?”通常情况下,不做任何决定比行动的后果更严重。 
  * 在经验教训中成长 
  如果团队已经做出了错误的决定,项目主管应当同团队成员一起坐下来,反省错误的发生的原因,强调从这次教训中可以学到什么。不要指责任何人或滥用职权,只是告诉团队这个错误决定所带来的负面影响,并让团队研究所学到的东西和可采用什么措施以确保这类过失不再发生。 
  * 解决反抗与抵制情绪 
  技术人员的特点,决定了他们对项目主管的要求和指导一般会有反抗或抵制情绪,特别是团队发展初期。项目主管都应明白这一点,克服团队反抗情绪的最佳策略是把时间和精力都集中在谈论如何实现项目目标上。在这个大前提下,充分激发团队成员的积极性。

28个UNIX/LINUX的命令行神器

dstat & sar

iostat, vmstat, ifstat 三合一的工具,用来查看系统性能(我在《性能调优攻略》中提到过那三个xxstat工具)。
你可以这样使用:
1
alias dstat='dstat -cdlmnpsy'
dstat screenshot

slurm

查看网络流量的一个工具
slurm screenshot

vim & emacs

真正程序员的代码编辑器。
vim screenshot

screen, dtach, tmux, byobu

你是不是经常需要 SSH 或者 telent 远程登录到 Linux 服务器?你是不是经常为一些长时间运行的任务而头疼,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为他们执行的时间太长了。必须等待它执行完毕,在此期间可不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。
Screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。请参看IBM DeveloperWorks的这篇文章《使用 screen 管理你的远程会话
gnu screen screenshot
dtach 是用来模拟screen的detach的功能的小工具,其可以让你随意地attach到各种会话上 。下图为dtach+dvtm的样子。
tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;当然其功能远不止于此。与screen相比的优点:可以横向和纵向分割窗口,且窗格可以自由移动和调整大小。可在多个缓冲区进行复制和粘贴,支持跨窗口搜索;非正常断线后不需重新detach;……  有人说——与tmux相比,screen简直弱爆了
byobu是Ubuntu开发的,在Screen的基础上进行包装,使其更加易用的一个工具。最新的Byobu,已经是基于Tmux作为后端了。可通过“byobu-tmux”这个命令行前端来接受各种与tmux一模一样的参数来控制它。Byobu的细节做的非常好,效果图如下:

multitail

MultiTail是个用来实现同时监控多个文档、类似tail命令的功能的软件。他和tail的区别就是他会在控制台中打开多个窗口,这样使同时监控多个日志文档成为可能。他还可以看log文件的统计,合并log文件,过滤log文件,分屏,……。
multitail screenshot

tpp

终端下的PPT,要是在某某大会上用这个演示PPT,就太TMD的Geek了。
tpp screenshot

xargs & parallel

Executes tasks from input (even multithread).
xargs 是一个比较古老的命令,有简单的并行功能,这个不说了。对于GNU parallel ( online manpage )来说,它不仅能够处理本机上多执行绪,还能分散至远端电脑协助处理。而使用GNU parallel前,要先确定本机有安装GNU parallel / ssh / rsync,远端电脑也要安装ssh。
xargs screenshot

duplicity & rsyncrypto

Duplicity是使用rsync算法加密的高效率备份软件,Duplicity支持目录加密生产和格式上传到远程或本地文件服务器。
rsyncrypto 就是 rsync + encryption。对于rsync的算法可参看酷壳的rsync核心算法
Encrypting backup tools.
duplicity screenshot

nethack & slash’em

NetHackWiki),
20年历史的古老电脑游戏。没有声音,没有漂亮的界面,不过这个游戏真的很有意思。网上有个家伙说:如果你一生只做一件事情,那么玩NetHack。这句话很惹眼,但也让人觉得这个游戏很复杂不容易上手。其实,这个游戏很虽然很复杂,却容易上手。虽然玩通关很难,但上手很容易。NetHack上有许多复杂的规则,”the DevTeam thinks of everything”(开发团队想到了所有的事情)。各种各样的怪物,各种各样的武器….,有许多spoilers文件来说明其规则。除了每次开始随机生成的地图,每次玩游戏,你也都会碰到奇怪的事情: 因为喝了一种药水,变成了机器人;因为踢坏了商店的门被要求高价赔偿;你的狗为你偷来了商店的东西….. 这有点象人生,你不能完全了解这个世界,但你仍然可以选择自己的面对方式。
网上有许多文章所这是最好的电脑游戏或最好的电脑游戏之一。也许是因为它开放的源代码让人赞赏,古老的历史让人宽容,复杂的规则让人敬畏。虽然它不是当前流行的游戏,但它比任何一个当前流行的游戏都更有可能再经受20年的考验。
Slash’EM 也是一个基于NetHack的经典游戏。
nethack screenshot

lftp

利用lftp命令行ftp工具进行网站数据的增量备份,镜像,就像使用rsync一样。
lftp screenshot

ack

ack是一个perl脚本,是grep的一个可选替换品。其可以对匹配字符有高亮显示。是为程序员专门设计的,默认递归搜索,省提供多种文件类型供选。
ack screenshot

calcurse & remind + wyrd

calcurse是一个命令行下的日历和日程软件。remind + wyrd也很类似。关于日历,我不得不提一个Linux的Cycle日历,也是一个神器,呵呵。
calcurse screenshot

newsbeuter & rsstail

newsbeuter 和 rsstail 是命令行下RSS的阅读工具。
newsbeuter screenshot

powertop

做个环保的程序员,看看自己的电脑里哪些程序费电。PowerTOP 是一个让 Intel 平台的笔记本电脑节省电源的 Linux 工具。此工具由 Intel 公司发布。它可以帮助用户找出那些耗电量大的程序,通过修复或者关闭那些应用程序或进程,从而为用户节省电源。
powertop screenshot

htop & iotop

htop 和 iotop  用来查看进程,内存和IO负载。
htop screenshot

ttyrec & ipbt

ttyrec 是一个 tty 控制台录制程序,其所录制的数据文件可以使用与之配套的 ttyplay 播放。不管是你在 tty 中的各种操作,还是在 tty 中耳熟能详的软件,都可进行录制。
ipbt 是一个用来回放 ttyrec 所录制的控制台输入过程的工具。
与此类似的还有Shelr 和 termrec 
ipbt screenshot

rsync

通过SSH进行文件同步的经典工具(核心算法
rsync screenshot

mtr

MTR – traceroute 2.0,其是把 traceroute 和 ping 集成在一块的一个小工具 用于诊断网络。
mtr screenshot

socat & netpipes

socat是一个多功能的网络工具,名字来由是” Socket CAT”,可以看作是netcat的N倍加强版。
netpipes 和socat一样,主要是用来在命令行来进行socket操作的命令,这样你就可以在Shell脚本下行进socket网络通讯了。
socat screenshot

iftop & iptraf

iftopiptraf可以用来查看当前网络链接的一些流量情况。
iftop screenshot

siege & tsung

Siege是一个压力测试和评测工具,设计用于WEB开发这评估应用在压力下的承受能力:可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。
Tsung 是一个压力测试工具,可以测试包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服务器。针对 HTTP 测试,Tsung 支持 HTTP 1.0/1.1 ,包含一个代理模式的会话记录、支持 GET、POST 和 PUT 以及 DELETE 方法,支持 Cookie 和基本的 WWW 认证,同时还支持 SSL。
siege screenshot

ledger

ledger 一个命令行下记帐的小工具。
ledger screenshot

taskwarrior

TaskWarrior 是一个基于命令行的 TODO 列表管理工具。主要功能包括:标签、彩色表格输出、报表和图形、大量的命令、底层API、多用户文件锁等功能。
taskwarrior screenshot
下图是TaskWarrior 2.0的界面:

curl

cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。cURL支援的通訊協定有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。
curl screenshot

rtorrent & aria2

rTorrent 是一个非常简洁、优秀、非常轻量的BT客户端. 它使用了 ncurses 库以 C++ 编写, 因此它完全基于文本并在终端中运行. 将 rTorrent 用在安装有 GNU Screen 和 Secure Shell 的低端系统上作为远程的 BT 客户端是非常理想的。
aria2 是 Linux 下一个不错的高速下载工具。由于它具有分段下载引擎,所以支持从多个地址或者从一个地址的多个连接来下载同一个文件。这样自然就大大加快了文件的下载速度。aria2 也具有断点续传功能,这使你随时能够恢复已经中断的文件下载。除了支持一般的 http(s) 和 ftp 协议外,aria2 还支持 BitTorrent 协议。这意味着,你也可以使用 aria2 来下载 torrent 文件。

 rtorrent screenshot

ttytter & earthquake

TTYtter 是一个Perl写的命令行上发Twitter的工具,可以进行所有其他平台客户端能进行的事情,当然,支持中文。脚本控、CLI控、终端控、Perl控的最愛。
Earthquake也是一个命令行上的Twitter客户端。
ttytter screenshot

vifm & ranger

Vifm 基于ncurses的文件管理器,DOS风格,用键盘操作。
vifm screenshot
Ranger用 Python 完成,默认为使用 Vim 风格的按键绑定,比如 hjkl(上下左右),dd(剪切),yy(复制)等等。功能很全,扩展/可配置性也非常不错。类似MacOS X下Finder(文件管理器)的多列文件管理方式。支持多标签页。实时预览文本文件和目录。

cowsay & sl

cowsay  不说了,如下所示,哈哈哈。还有xcowsay,你可以自己搜一搜。
cowsay screenshot
 sl是什么?ls?,呵呵,你会经常把ls 打成sl吗?如果是的话,这个东西可以让你娱乐一下,你会看到一辆火车呼啸而过~~,相当拉风。你可以使用sudo apt-get install sl 安装。
最后,再介绍一个命令中linuxlogo,你可以使用 sudo apt-get install linuxlogo来安装,然后,就可以使用linuxlogo -L
来看一下各种Linux的logo了

Everything必知必会搜索教程(转)

一般匹配搜索有三种方式:1、常规搜索:你输入什么搜索什么 2、通配符:使用* ?等符号3、正则表达式:最复杂也最万能的搜索匹配法

一、Everthing常量 大小常数 日期常数 empty 0KB Today yesterday tiny 0-10 KB <last|past|prev|current|this ><week|month|year> small 10-100KB 属性常数 medium 100KB-1 MB R 只读文件 H 隐藏文件 large 1MB-16 MB S 系统文件 D 文件夹 gigantic 16MB-128 MB D 文件夹 N 普通文件

二、搜索函数与运算符 符号 解释 例子 解释 逻辑运算 空格 逻辑与 li ch 文件名中既含li又含ch | 逻辑或 1.txt | 2.txt 文件名含1或2的txt文件 ! 逻辑非 .txt !b 文件名不含b的txt文件 < > 提高优先级 file:<1 | 2 > 文件名含1或2的文件 “” 特殊字符串 “foo bar” 字符串 通配符 * 匹配0-∞任意字符 a.txt ”ab.txt” “abbb.txt” ? 匹配1个任意字符 a??.txt ”abc.txt” “aaa.txt” 修饰符 case: 匹配大小写
file: 只匹配文件
folder: 只匹配文件夹
path: 匹配路径和文件名
regex: 正则表达式
ww:、wholeword: 全字匹配
函数 attrib:<属性>、attributes:<属性> 搜索特定属性 *.txt attrib:a 所有存档属性的txt文件 dc:、datecreated: 搜索特定创建日期 *.txt dc:last year 去年创建的 dm:、datemodified: 搜索特定修改日期 *.txt dm:2015-2016 2015-2016修改的 dupe: 搜索重复目标

 empty:    搜索空文件夹        
ext:<list> 搜索指定后缀 file:<ext:bmp|txt> bmp和txt文件
len:<length> 筛选出特定长度 *.txt len:5-10 文件名长5至10的txt文件
parents:<count> 文件夹深度
size:<size> 搜索特定大小的文件 *.txt size:large、7mb-8mb 1MB-16 MB的txt文件

函数:function:value等于value、function:start..end(function:start-end)范围start到end,剩下为>=<

三、正则表达式 开启正则表达式:Everything选项卡->常规->Home Match regex:选择Enabled,新开窗口就可以使用正则表达式了 符号 解释 例子 解释 | 逻辑或 gray|grey gray或者grey () 提升优先级 gr(a|e)y 等价于gray|grey ? 匹配0或1个指定字符 colou?r 匹配”color” “colour”

  • 匹配0-∞个指定字符 c(ab)* 匹配”c” “cab” “cabab”
  • 匹配1-∞个指定字符 ab+c 匹配”abc” “abbc” “abbbc” . 匹配任意单个字符 a.c 匹配”abc” “aac” [] 字符集,匹配单个字符 [a.c] 、[a-z] 匹配”a” “.” “c”、匹配a到z [^] 匹配指定集合之外的单个字符 [^a-z] 匹配所有不是a到z的字符 ^ 匹配字符串的开始 ^abc 开头为abc的字串 $ 匹配字符串的结尾 abc$ 结尾为abc的字串 {m,n} 匹配字符个数最小值和最大值 a{3,5} 匹配”aaa” “aaaa” “aaaaa”

四、搜索实例 实例1:找到所有c目录及其下任意子目录的txt文件 c:windows*.txt 实例2:找出所有bmp和jpg文件 .bmp | .jpg 实例3:找出所有名为download文件夹下的所有avi文件 download .avi 实例4:找出所有名字中含.tx的文件夹 folder:.tx 实例5:搜索空txt文件 .txt file:size:0 实例6:搜索所有大于1MB的常见图像文件 <.bmp|.jpg|.png|.tga> size:>1mb 实例7:查找所有全字匹配1.txt的文件 ww:1.txt 实例8:查找wi开头的h文件和cpp文件 file:<wi.h|wi*.cpp> 或wi* ext:h|cpp实例9:d盘2016/1/1至2016/6/1的修改过的word文件 .doc|docx dm:2015/1-2015/6 实例10:XXX第N集.rmvb”,XXX是电视剧名,N是数字 regex:.第[0-9]+集 实例11:连续的RAR压缩包 XXXX.partN.rar regex:.part[0-9]+.rar 实例12:连续的ZIP压缩包 XXXX.zN regex:..z[0-9]+ 实例13:搜索所有纯中文目标 regex:^[^0-9a-z]$ 实例14:搜索带中文字符的目标 regex:^.[^!-~]+.$ 实例15:找到所有c:windows目录下的txt文件 regex:c:windows[^].txt 实例16:列出所有c:windows的N级子目录 regex:c:windows[^]([^]){N}$ 实例17:列出所有c:windows的N级子目录下的txt文件 regex:c:windows[^]([^]*){N}.txt$