`
庄周小孟
  • 浏览: 25967 次
  • 性别: Icon_minigender_1
  • 来自: 东莞
社区版块
存档分类
最新评论

Linux文件查找命令find,xargs详述

 
阅读更多

Linux文件查找命令find,xargs详述【转载】

 

总结: zhy2111314
来自: LinuxSir.Org
整理: 北南南北
摘要: 本文是find 命令的详细说明,可贵的是针对参数举了很多的实例,大量的例证,让初学者更为容易理解;本文是zhyfly兄贴在论坛中;我对本文进行了再次整理,为方便大家阅读;

 

http://www.linuxsir.org/main/?q=node/137

 


4、使用exec或ok来执行shell命令

使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的

在有些操作系统中只允许-exec选项执行诸如l s或ls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。

exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{ },一个空格和一个\,最后是一个分号。为了使用exec选项,必须要同时使用print选项。如果验证一下find命令,会发现该命令只输出从当前路径起的相对路径及文件名。

例如:为了用ls -l命令列出所匹配到的文件,可以把ls -l命令放在find命令的-exec选项中

# find . -type f -exec ls -l {  } \;
-rw-r--r--    1 root     root        34928 2003-02-25  ./conf/httpd.conf
-rw-r--r--    1 root     root        12959 2003-02-25  ./conf/magic
-rw-r--r--    1 root     root          180 2003-02-25  ./conf.d/README

上面的例子中,find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出。
在/logs目录中查找更改时间在5日以前的文件并删除它们:

$ find logs -type f -mtime +5 -exec rm {  } \;

记住: 在shell中用任何方式删除文件之前,应当先查看相应的文件,一定要小心!当使用诸如mv或rm命令时,可以使用-exec选项的安全模式。它将在对每个匹配到的文件进行操作之前提示你。

在下面的例子中, find命令在当前目录中查找所有文件名以.LOG结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示。

$ find . -name "*.conf"  -mtime +5 -ok rm {  } \;
< rm ... ./conf/httpd.conf > ? n

按y键删除文件,按n键不删除。

任何形式的命令都可以在-exec选项中使用。

在下面的例子中我们使用grep命令。find命令首先匹配所有文件名为“ passwd*”的文件,例如passwd、passwd.old、passwd.bak,然后执行grep命令看看在这些文件中是否存在一个sam用户。

# find /etc -name "passwd*" -exec grep "sam" {  } \;
sam:x:501:501::/usr/sam:/bin/bash
分享到:
评论

相关推荐

    Linux文件查找命令find

    ### Linux 文件查找命令 find 在Linux系统中,`find`命令是极其强大的工具,用于在文件系统中搜索和定位特定的文件或目录。通过灵活的选项设置,`find`能够根据文件名、权限、所有者、修改时间等多种条件进行精确...

    Linux_的命令find_xargs详述(2).txt

    在Linux系统中,`find`与`xargs`是两个非常强大的命令行工具,它们分别用于查找文件和执行命令。本文将深入解析这两个命令的功能、用法以及如何结合使用,以实现高效的数据处理。 #### 1. `find` 命令详解 `find`...

    Linux_的命令find_xargs详述(1).txt

    ### Linux中的find与...通过上述示例可以看出,`find` 和 `xargs` 命令在Linux环境下具有非常强大的功能,能够满足用户对于文件查找和处理的各种需求。熟练掌握这两个命令的使用方法,将极大地提高日常工作的效率。

    find命令和xargs命令配合使用

    find命令和xargs命令配合使用,自己总结的,觉得还好

    shell-find和xargs详述.txt

    ### Shell Find 和 Xargs 详述 #### 一、Find 命令详解 ##### 1. Find 命令格式 Find 是 Linux 和 Unix 系统中用于搜索文件的强大工具之一。它允许用户根据多种条件查找文件。其基本语法如下: ```bash find ...

    Linux文本查找命令find的用法详解

    在Linux系统中,`find`命令是一个非常实用的工具,用于在文件系统中搜索指定的文件或目录。它提供了丰富的参数,可以根据文件的名称、类型、大小、时间戳等多种属性进行筛选。下面我们将详细讲解`find`命令的用法。 ...

    Linux xargs 命令用法详解

    Linux xargs 命令 xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。 xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。 xargs 也可以将单行或多行文本...

    linux 下查找文件或者内容常有命令

    `find` 命令是Linux中最强大的文件查找工具之一,可以根据多种条件进行文件查找。 **基本用法:** ```bash find [路径] &lt;表达式&gt; ``` **表达式说明:** - `-name &lt;表达式&gt;`:根据文件名查找文件。 - `-iname ...

    【IT十八掌徐培成】Linux基础-04.xargs-mount-umount.zip

    本课程"【IT十八掌徐培成】Linux基础-04.xargs-mount-umount"聚焦于两个重要的Linux命令——xargs和文件系统的挂载与卸载(mount和umount)。以下是对这些知识点的详细讲解: 首先,我们来了解一下xargs命令。xargs...

    Linux下find命令整理

    在Linux系统中,`find`命令是一个非常强大的工具,用于在指定路径下查找符合特定条件的文件。这个命令可以帮助我们快速定位系统中的文件,进行管理、备份或删除操作。以下是对`find`命令的一些详细解释和实例说明: ...

    Linux 下xargs命令详解及xargs与管道的区别

    - 许多Linux命令对命令行参数的数量有限制,例如`mv`或`rm`命令只能处理一定数量的文件。当需要处理的文件数量超过这个限制时,直接使用这些命令就会出现问题。这时,`xargs`就可以帮助我们将文件列表分割成更小的...

    Linux中xargs命令的使用方式.doc

    在Linux系统中,`xargs`是一个非常实用的命令,它能够将标准输入的数据转换成命令行参数,供其他命令使用。这个工具极大地增强了命令行的处理能力,尤其是在处理大量数据或者需要对列表中的每个元素执行相同操作时。...

    windows dos下xargs使用

    1. **文件名处理**:假设你有一个包含大量文件名的文本文件,比如`filelist.txt`,你可以用`xargs`配合`rm`命令删除这些文件: ```bash cat filelist.txt | xargs rm ``` 这个命令会逐行读取`filelist.txt`中的...

    可在windows使用的类linux工具xargs

    Cygwin是一个在Windows上提供类Unix环境的开源项目,它通过这些DLL文件模拟了Linux的API,使得Linux命令和程序能够在Windows上运行。`rm.exe`是Cygwin对`rm`命令的实现,而`xargs.exe`则是Windows下的`xargs`工具。 ...

    linux下find命令实例

    `find` 是 Linux 和类 Unix 系统中一个非常强大的文件查找工具。通过 `find` 命令,用户可以基于多种条件来搜索文件系统中的文件或目录,如名称、权限、所有者、组、时间戳等。本文将详细介绍 `find` 命令的各种用法...

    可以在windows上运行linux命令的批处理文件

    本文将探讨如何在Windows上运行Linux命令,以及提供的批处理文件`linux.bat`、`listdisk.bat`和`window.bat`的作用。 首先,Windows 10引入了Windows Subsystem for Linux (WSL),这是一个可以在Windows上无缝运行...

Global site tag (gtag.js) - Google Analytics