Linux命令行find小技巧

Stupig posted @ 2010年7月13日 07:06 in Linux with tags find linux , 2155 阅读

  命令行一直是Linux用户用来解决问题的首要选择,当需要做某件事时,你只要想好如何去做,从那时起你就知道该如何做了。

  不过很少有人花些时间系统地了解处理工具在处理过程中的输入和输出。因此对于最基本实用工具的功能可能并不是很了解。在本文中,我们将讨论所有shell工具箱中都有的一个重要工具:find实用工具。

  正如它的名字所表示的,find是在磁盘中查找满足给定标准的文件和目录的应用程序。默认情况下,它从当前目录开始,向下扫描所有子目录。find基于各种不同的文件属性来进行查询,而且可以对查询结果执行某种操作,通常是对每个查询结果运行一些程序。

  让我们来看一些例子:首先,为了在当前目录或子目录中查找所有html文件,我们可以使用:

$ find -name "*.html" -type f

  该命令有两个测试条件,第一个,"-name"用于检验搜索过程中的每个文件名,如果你需要对大小写敏感,可以使用"-iname"代替。第二个参数是"-type",它用于指定你感兴趣的文件类型。"f"表示我们查找的是普通文件,我们可以使用"d"表示目录或使用"l"表示符号连接。在find 手册中可以看到该工具的所有选项。

  在上面的这个例子中,因为我们要在当前目录中搜索,所以没有指定路径。你可以从你的系统中的任何目录开始搜索,例如,你知道html文件存放在两个位置之一中,那么我们就可以通过指定一个开始搜索点使查询更快更准确。

$ find /var/www /home/nickg/public_html -name "*.html" -type f

  这个查询从web服务器的根目录开始,搜索我的html根目录和它的子目录,希望能够得到我们想要的结果,而不是像web浏览器缓存或html帮助文件。

  默认情况下,find遍历所有子目录,但是你可以通过指定最大深度来控制这个行为。在前面的例子中,如果我们只想搜索这两个目录不想搜索下一层,你可以添加"-maxdepth 1"到命令中。设置最大深度为0表示只检验命令行中的给定文件。同样,你可以设定最小深度,从而避免搜索位于根目录的文件。

  find的另一个应用是搜索属于某个给定用户的文件,因此为了搜索我的系统中所有属于我的文件,我使用以下命令:

$ find / -user nickg

  同样可以搜索基于组用户的文件,使用"-group"参数。

  另外的测试分类与时间相关,我们可以用基于时间的方式来搜索文件,可以分别使用"-ctime","-atime"和"-mtime"参数来指定最后创建时间,最后访问时间和最后修改时间。例如要搜索前天创建的文件,可以使用:

$ find -ctime -1

  注意1前面的"-"表示我们是从今天向以前的日期范围搜索。如果你需要更精确地搜索,可以使用分钟变量"-cmin","-amin"和"-mmin"。如果你刚犯了一个错误但不确定会影响到那些文件,这很简单可以使用如下查询:

$ find -nmin -5

  find对文件执行的标准行为是显示出文件名,这就是为什么如果你跟踪结果,就会看到一系列文件名的原因。如果你想使用这些结果作为另外一个过滤器的输入的话,这将会十分有用。但是如果你需要结果的更多信息,你可以令find输出与ls –l 同样的结果:

$ find -user nickg -iname "*.html" –ls

  这个命令将会返回文件权限和时间信息。

  最后,你可以通过使用"-exec"参数,来让find命令对每个搜索结果运行任何程序。下面的程序将会删除你的home目录中所有扩展名为".tmp"的文件。

$ find -name ".tmp" -exec rm {} ;

  上面两个大括号将会被相应的文件名代替,反斜杠用来告诉find何时命令结束。find常和chmod结合使用快速改变大量文件的文件权限,或者和grep与sed结合使用来选择性的搜索或使用正则表达式修改文本。这仅是与find相关使用技巧的冰山一角,使用它作为一个脚本的输入,你可以让费时的任务自动完成,例如清除一年内没有访问的文件,或者自动备份修改的文件。find的这种强大更能意味着它仍将是Linux用户用来处理任务的最好工具之一。

AAA 说:
2021年8月09日 21:16

Wow, What a Excellent post. I really found this to much informatics. It is what i was searching for.I would like to suggest you that please keep sharing such type of info.Thanks Pharmacy Technician certification training online course

BASIT 说:
2021年8月15日 15:21

This is such a great resource that you are providing and you give it away for free. buy old gmail

dfg` 说:
2021年8月22日 17:53

That is definitely also an effective upload we essentially prized reviewing. Doable day after day that him and i have the opportunity to find the first thing. เว็บ ufabet

dfg` 说:
2021年8月25日 21:08

All your hard work is much appreciated. Nobody can stop to admire you. Lots of appreciation. buy youtube subscribers

dfg` 说:
2021年8月26日 22:45

There are plenty of dissertation web sites over the internet while you obtain not surprisingly detailed in the webpage. bedava poker oyna

dfg` 说:
2021年8月30日 15:51

thank you for your interesting infomation. bluffton plumbing bluffton sc

dfg` 说:
2021年9月11日 17:01

You there, this is really good post here. Thanks for taking the time to post such valuable information. Quality content is what always gets the visitors coming. krt carts

dfg` 说:
2021年9月12日 14:26

Thank you for such a well written article. It’s full of insightful information and entertaining descriptions. Your point of view is the best among many. 美国代写被抓

dfg` 说:
2021年9月13日 15:55

This particular looks for example certainly superb. Most of these slight tips are made using availablility of cosmetic foundation interest. I like to him or her appreciably. 먹튀사이트

dfg` 说:
2021年9月14日 14:23

This article gives the light in which we can observe the reality. This is very nice one and gives indepth information. Thanks for this nice article. game hunters

dfg` 说:
2021年10月08日 00:03

I am continually amazed by the amount of information available on this subject. What you presented was well researched and well worded in order to get your stand on this across to all your readers. open source real estate crowdfunding software

dfg` 说:
2021年10月12日 22:03

We have sell some products of different custom boxes.it is very useful and very low price please visits this site thanks and please share this post with your friends. VPN검증

dfg` 说:
2021年10月14日 22:14

Wow, What a Excellent post. I really found this to much informatics. It is what i was searching for.I would like to suggest you that please keep sharing such type of info.Thanks foxz88

dfg` 说:
2021年10月22日 23:55

Wow, What an Outstanding post. I found this too much informatics. It is what I was seeking for. I would like to recommend you that please keep sharing such type of info.If possible, Thanks. 犀利士購買

dfg` 说:
2021年10月25日 17:59

Good news for Free Fire players. You can get Genera Free Fire Redeem Code for India, Singapore, Malaysia, Indonesia and Europe server. As per the official releases, working reward Kode Redeem FF today availabel on NewsGater.com

dfg` 说:
2021年10月28日 22:20

This is very interesting content! I have thoroughly enjoyed reading your points and have come to the conclusion that you are right about many of them. You are great. sildalis 120

satac key dates 说:
2021年11月01日 17:44

메이저사이트 메이저놀이터에서는 스포츠 종목으로 축구,야구,농구에 대한 배팅이 가능하면서 먹튀가 존재하지 않는 사이트를 일컫는 명칭입니다.

dfg` 说:
2021年11月02日 15:52

Succeed! It could be one of the most useful blogs we have ever come across on the subject. Excellent info! I’m also an expert in this topic so I can understand your effort very well. Thanks for the huge help. https://www.online-hebat.com/product/14

dfg` 说:
2021年11月03日 01:14

Great things you’ve always shared with us. Just keep writing this kind of posts.The time which was wasted in traveling for tuition now it can be used for studies.Thanks THC vape juice UK

satac key dates 说:
2021年11月03日 20:02

مانا رشــفة متجــر وتطبيــق الكترونــي مختــص فــي بيــع وتوصيــل ميــاه الشــرب الــى المنــازل او المســاجد او أي مــكان تحددونــه مــن خــال وســائل النقــل التــي نمتلكهــا بالإضافــة الــى مســتودعاتنا المنتشــرة فــي عمــوم المملكــة لضمــان الســرعة والكفــاءة بالعمــل كل ذلــك عــن طريـق تطبيـق بتصميم بسـيط سـهل الإ

satac key dates 说:
2021年11月03日 21:59

best website design & development agency Charlotte NC We're not just another website company. Evolution in technology is continually transforming how businesses operate and how people interact with the world.

satac key dates 说:
2021年11月04日 16:14

soap2day.eus Soap2day is a FREE Movie Streaming site to watch movies and tv series. Soap2dayto, soap2day to, soap 2 day, soaptoday is free and safe to use.

satac key dates 说:
2021年11月04日 21:34

Get Third-party risk management software in UK LEVIZO provide Third-party risk management services in UK, Information security services in UK and Information risk management Services in UK. Contact us today for more details and quotation.

dfg` 说:
2021年11月04日 22:08

Wow, this is really interesting reading. I am glad I found this and got to read it. Great job on this content. I like it. situs judi online mudah menang

dfg` 说:
2021年11月07日 21:53

New web site is looking good. Thanks for the great effort. daftar judi slot online terpercaya

dfg` 说:
2021年11月08日 20:24

I have read your blog it is very helpful for me. I want to say thanks to you. I have bookmark your site for future updates. mm888betทางเข้า

dfg` 说:
2021年11月10日 15:45

Thanks for posting this info. I just want to let you know that I just check out your site and I find it very interesting and informative. I can't wait to read lots of your posts. สูตรบาคาร่าฟรี

dfdffd 说:
2021年11月16日 01:02

Wow, What a Excellent post. I really found this to much informatics. It is what i was searching for.I would like to suggest you that please keep sharing such type of info.Thanks 메이저토토


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter