如何ubuntu删除文件命令用find命令查找到的文件

Linux系统文件查找命令find的基本使用及其高级用法_Linux教程_Linux公社-Linux系统门户网站
你好,游客
Linux系统文件查找命令find的基本使用及其高级用法
来源:Linux社区&
作者:guodayong
在Linux系统维护工作时,经常会查找文本文件。
例如:假如:web服务器经常出现延迟,或者经常会出现一些参数的错误信息。
1、考虑带宽问题
2、考虑我的配置文件问题:
例如:是不是被其它人更改过所造成的参数、延迟等信息,这样我们就会用到find命令来查找文件的相关信息,并加以修改。
如果我们做系统运维这方面的工作时,会经常用到find命令来帮助我们完成文件的查找工作,所以我们要认真学习find命令的使用及其相关的高级用法:
文件查找:locate、find
locate: 非实时,模糊匹配,查找是根据全系统文件数据库进行的; # updatedb, 手动生成文件数据库
find: 实时 精确 支持众多查找标准 遍历指定目录中的所有文件完成查找,速度慢;
查找路径:默认为当前目录 查找标准:默认为指定路径下的所有文件 处理运作:默认为显示
1、find命令的一般形式为;
find 查找路径 查找标准 查找到以后的处理运作 find pathname -options [ -exec -ok ...]
2、find命令的参数;
pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 -print: find命令将匹配的文件输出到标准输出。 -exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。 -ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
3、find命令选项
-name :按照文件名查找文件 For example:在/etc目录下查找文件名passwd的文件 # find /etc -name 'passwd' -iname:按照文件名查找文件,且不区分大小写 For example:在/etc目录下查找文件名passwd的文件 # find /etc -iname 'passwd'
-user:按照文件属主来查找文件 For example:在/tmp目录下查找属主为hdoop的文件或目录 # find /etc -user hdoop
-group :按照文件所属的组来查找文件 For example:在/tmp目录下查找属组为hbase的文件或目录 # find /tmp -group hbase
-uid:UID:当某个用户被删除,用户所属的文件UID没有被删除,在这个情况下就可以使用此选项 For example:用户hdoop的UID为600,如果将hdoop用户删除,那如何在/tmp查找文件或目录的属主为hdoop以前的文件呢 # find /tmp -uid 600
-gid:GID:当某个组被删除,用户所属的文件GID没有被删除,在这个情况下就可以使用此选项 For example:组hbase的GIDD为666,如果将hbase组删除,那如何在/tmp查找文件或目录的属组为hbase以前的文件呢 # find /tmp -gid 666
-nouser:查找没有有效所属主的文件,即该文件所属的主在/etc/passwd中不存在 For example:查找/tmp目录没有属主的文件 # find /tmp -nouser
-nogrouop:查找没有有效所属组的文件,即该文件所属的组在/etc/groups中不存在。 # find /tmp -nogroup
-type:以文件类型查找文件 在Linux文件系统中常用到的文件类型有: b:块设备文件 d:目录 c:字符设备文件 p:管道文件 l:符号链接文件 f:普通文件 s:套接字设备文件 p:管道设备文件 For example:查找/tmp目录下所有普通文件 # find /tmp -type f
-size: [+|-]文件大小查找文件 默认单位是字节,当我们去找10M的文件时,所有9点几兆的文件都满足条件。 #k:(#代表数字) #M:(#代表数字) #G:(#代表数字) For example:查找/tmp目录下文件大小为10MB的文件 # find /tmp -size 10M 组合条件: -a:与条件 -o:或条件 -not:非条件 For example:查找/tmp目录下没有属主并且类型为目录的文件 # find /tmp -nouser -a -type d -ls 假如把-a换成-o选项:则说明没有属主或是目录文件,两个选项满足一个即可。 # find /tmp -not -type d 说明在/tmp目录查找非目录类型的文件 查找/tmp目录下,非目录类型,并且还不是套接字类型的文件 # find /tmp -not -type d -a -not -type s # find /tmp -not \( -type -d -o -type -s \) 两者都可以实现目的:
相关资讯 & & &
& (06月16日)
& (10/09/:10)
& (04/15/:32)
& (11/08/:01)
& (10/09/:38)
& (03/22/:24)
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款Linux命令之find命令详解
来源:&&&时间: 20:38:30&&&阅读数:
[导读] find命令是一个在UNIX文件系统中查找文件的常用命令,可以进行很多条件查找。让我们来看一些find命令的实例。语法: find 路径 约束条件如何查找在文件名中含有指定关键字的文件?下面这条命令查找在 etc目录下
find命令是一个在UNIX文件系统中查找文件的常用命令,可以进行很多条件查找。让我们来看一些find命令的实例。语法: find 路径 约束条件如何查找在文件名中含有指定关键字的文件?下面这条命令查找在&/etc&目录下所有文件名中含有&mail&的文件。# find /etc -name &*mail*&如何查找文件大小超过指定值的文件?下面这个命令会列出系统中所有大于100M的文件# find / -type f -size +100M如何查找在最近几天没有被修改过的文件?下面这条命令会列出在当前目录下在最近60天没有被修改过文件# find . -mtime +60如何查找在最近几天被修改的文件?下面这条命令会列出在当前目录下在最近2天被修改过文件# find . &mtime -2如何删除扩展名为.tar.gz并且大于100M的压缩文件?当你不想意外删除文件时,那么当执行下列命令要小心点。最好的方法是利用&ls -l&去执行下列相同命令以确保当执行rm命令时,你知道什么文件会被删除。# find / -type f -name *.tar.gz -size +100M -exec ls -l {} ;&# find / -type f -name *.tar.gz -size +100M -exec rm -f {} ;如何对最近几天没有被修改的文件进行存档?下面的命令查找到在&/home/jsmith&目录下最近60天没有被修改的文件并且在&/tmp&下创建一个格式为&ddmmyyyy_archive.tar&的归档文件# find /home/jsmith -type f -mtime +60 | xargs tar -cvf /tmp/`date '+%d%m%Y'_archive.tar`提醒一下:你可以使用&midnight commander&上进行有关文件的一些操作,它是UNIX字符界面下一款非常强大的文件管理器。
除非特别声明,PHP100新闻均为原创或投稿报道,转载请注明作者及原文链接原文地址:
延伸阅读 More
haowubai&&
haowubai&&
haowubai&&
haowubai&&
haowubai&&
视频教程 Video
网站服务:
专题合作 :
会员问题 : QQ
友情链接 : QQ 925939
网站投稿 :
@php100官方
php100官方微信
Copyright (C) 2007-, All Rights Reserved 版权所有 上海创恩信息技术有限公司. 沪ICP备号首页 & shell脚本学习find 命令:查找文件find命令用于查找文件,其命令格式为:find
[起始目录]
[搜索条件]
[操作] 其中[起始目录]是指命令将从该目录起,遍历其下的所有子目录,查找满足条件的文件。该目录默认是当前目录。[搜索条件]是一个逻辑表达式,当表达式为"真"时,搜索条件成立,为"假"时不成立。搜索条件的一般表达式及其说明见表6.20。表6.20& find命令搜索条件的一般表达式及其说明 搜索条件 说&&& 明 -name ‘字符串’ 查找文件名中包含所给字符串的所有文件 -user ‘用户名’ 查找属于指定用户的文件 -group ‘用户组名’ 查找属于指定用户组的文件 -type x 查找类型为x的文件,类型包括b(块设备文件),c(字符设备文件), d(目录文件),p(命名管道文件), f(普通文件),l(符号链接文件), s(socket文件) 续表& 搜索条件 说&&& 明 -atime n 查找n天以前被访问过的文件 -size n 指定文件大小为n -perm 查找符合指定权限值的文件或目录 -mount 要查找文件时不跨越文件系统mount点 -follow 如果find命令遇到符号链接文件,就跟踪到链接所指向的文件 -cpio 对匹配的文件使用cpio命令,将文件备份到磁带设备中 -newer file1 ! file2 查找更改时间比文件file1晚但比文件file2早的文件 -prume 不在指定的目录中查找,如果同时指定-depth选项,那么-prune将被 find命令忽略 -ok 和exec作用相同,但在执行每一个命令之前,都会给出提示,由用户来确定是否执行 -depth 在查找文件时,首先查找当前目录,然后再在其他子目录中查找 可执行的操作及其说明见& &find命令常用可执行操作及其说明 可执行操作 说&&& 明 -exec 命令名 {} ; 不需确认执行命令。注意: “{}”代表找到的文件名,“}”与“”之间有空格 -print 送往标准输出 例如从当前目录查找所有以.txt结尾的文件并在屏幕上显示出来,命令行为:find
-print& 查找两个后缀的文件,就改为下面的用法:find . ( -name *.xml -o -name *.sh )
再如从根目录查找类型为符号连接的文件,并将其删除,命令行为:find
只查找文件,不包含目录的(该行,不能加--print,加了会报错):find
又如从当前目录查找用户tom的所有文件并在屏幕上显示,命令行为:find
-print 又如显示当前目录中大于20字节的.c文件名,命令行为:find
-print 显示当前目录中恰好10天前访问过的文件名,命令行为:find
-print 显示当前目录中不到10天前访问过的文件名,命令行为:find
-print&查找/home目录下权限为640的文件或目录,命令行为:find
-perm 640 搜索根目录下大于100KB的文件,并显示,命令行为:find
-print 搜索根目录下小于500KB的文件,命令行为:find
-print 删除文件大小为0的文件rm -i `find ./ -size 0`
find ./size 0 exec rm {} ;
find ./size 0|xargs rm -rf 在当前目录中查找所有文件名以.doc结尾,且更改时间在5天以上的文件,找到后进行删除,且删除前给出提示,命令行为:find
rm {} \;或
find . -mtime +5 -name "*.*" -exec rm -f {} \;
自动删除当前目录五天以前的文件 注:后面的反斜杠不能少,不然会报 ”find: 遗漏”-exec”的参数” 。 在当前目录下查找所有链接文件,并以长格式显示文件的基本信息,命令行为:find
lrw-rw-r-- 1 root root 36 07-27 14:34 ./example2
lrw-rw-r-- 1 root root 72 07-27 14:36 ./example3
lrw-rw-r-- 1 root root 36 07-27 14:36 ./example1 在当前目录中查找文件名由一个小写字母、一个大写字母和两个数字组成,且扩展名为.doc的文件,并显示,命令行为:find
' [a-z][A-Z][0-9][0-9].doc'
-print 查找空文件夹:find -type d -empty
分类: shell脚本学习 find, shell您可能也喜欢Linux下用一条命令批量修改图片尺寸 ls配合rm删除文件的问题 将某个文件夹下的所有文件内容清空 (2)近期文章 主机远程唤醒(WOL,Wake on Lan)的几种方法 python 列表去重 linux GPT转mbr udev控制磁盘引导顺序 ntp漏洞修复文章归档 选择月份 2014年十二月 &(1) 2014年十一月 &(9) 2014年十月 &(17) 2014年九月 &(12) 2014年八月 &(6) 2014年七月 &(18) 2014年六月 &(21) 2014年五月 &(22) 2014年四月 &(9) 2014年三月 &(18) 2014年二月 &(21) 2014年一月 &(20) 2013年十二月 &(24) 2013年十一月 &(16) 2013年十月 &(17) 2013年九月 &(9) 2013年八月 &(15) 2013年七月 &(18) 2013年六月 &(21) 2013年五月 &(19) 2013年四月 &(13) 2013年三月 &(20) 2013年二月 &(11) 2013年一月 &(14) 2012年十二月 &(24) 2012年十一月 &(18) 2012年十月 &(11) 2012年九月 &(11) 2012年八月 &(13) 2012年七月 &(20) 2012年六月 &(36) 2012年五月 &(39) 2012年四月 &(28) 2012年三月 &(46) 2012年二月 &(23) 2012年一月 &(6) 2011年十二月 &(27) 2011年十一月 &(58) 2011年十月 &(12) 2011年九月 &(15) 2011年八月 &(45) 友情链接CSS学习站C语言学习总结nginx中文站nginx中文网——做的不错w3school不错的关于的技术站点关于mongoDB汇总的一个站点关于网站架构的博客淘宝数据平台博客王乾的博客绿盟安全如何利用find命令查找文件 - 面试题|看准网
如何利用find命令查找文件
2011 - 08 - 02 更新
find命令会在指定目录及其子目录下查找符合条件的特定文件。此命令的最大用处是当忘了文件的正确所在,而想找到该文件。
find 目录名 条件
目录名 — 欲开始寻找的目录所在。find会寻找此目录及其子目录。可以有多个目录名称,只要目录与目录之间用空格分开即可。
条件 — 欲搜索文件的条件,可包含文件名称、属主、最后修改时间等等。
条件列表说明
-name name 指定要被寻找的文件或目录名称,
可用通配符,如, -name ‘*.c’
-print 将符合条件的路径打印出来
-size n 寻找占用n个block的文件
-type x 以文件类型作为寻找条件。文件类型x如下:
d — 目录(directory), f — 文件(file),
b — 块(block), c — 字符(character),
p — 管道(pipe)
-user user 寻找属于user所拥有的文件,
user可为用户名或uid号
-group group 寻找用户组为group的所有文件,
group可为组名称或gid号
-links n 寻找链接数等于n的所有文件
-atim n 寻找n天之前曾被存取的文件
-mtime n 寻找n天之前曾被修改的文件
-exec command {}\; 用寻找到的文件作为执行command的对象,
{}内存欲执行command时所需的参数
条件的逻辑运算符:
逻辑运算符 逻辑意义 举例 说明
! 非 !-name “*.c” 所有不以.c为扩展名的文件
-o 或 -size +10 -o -links 3 所有大于10block或链接数为3的文件
与 -size +10 -links 3 大于10block且链接数为3的文件
注:上表中的“+10”表示大于10,“-10”表示小于10。
基本用法举例
find /temp -name “abc*” -print 在/temp目录下查找文件名以abc开始的文件
find . -name test -print 在当前目录下查找文件名为test的文件
您可以返回查看更多面试信息:
神州数码(中国)有限公司&&-&&福州
华润置地(深圳)有限公司&&-&&深圳
杭州迪普科技有限公司&&-&&北京-海淀区
广东海大集团股份有限公司&&-&&广州
浙江爱仕达电器股份有限公司&&-&&台州
北京华清远见科技信息有限公司&&-&&上海
北京天大天科科技发展有限公司&&-&&北京-海淀区
五冶集团上海有限公司工业炉窑工程分公司&&-&&包头
应达工业(上海)有限公司&&-&&上海
深圳华强集团有限公司&&-&&深圳

我要回帖

更多关于 命令行删除文件夹 的文章

 

随机推荐