`

xargs find -exec,linux 命

阅读更多

而使用xargs命令则只有一个进程。另外,在使用xargs命令时,究竟是一次获取所有的参数,还是分批取得参数,以及每一次获取参数的数目都会根据该命令的选项及系统内核中相应的可调参数来确定。

来看看xargs命令是如何同find命令一起使用的,并给出一些例子。

下面的例子查找系统中的每一个普通文件,然后使用xargs命令来测试它们分别属于哪类文件

#find . -type f -print | xargs file
./.kde/Autostart/Autorun.desktop: UTF-8 Unicode English text
./.kde/Autostart/.directory: ISO-8859 text
......

在整个系统中查找内存信息转储文件(core dump) ,然后把结果保存到/tmp/core.log 文件中:

$ find / -name "core" -print | xargs echo "" >/tmp/core.log

上面这个执行太慢,我改成在当前目录下查找

#find . -name "file*" -print | xargs echo "" > /temp/core.log
# cat /temp/core.log
./file6

在当前目录下查找所有用户具有读、写和执行权限的文件,并收回相应的写权限:

# ls -l
drwxrwxrwx 2 sam adm 4096 10月 30 20:14 file6
-rwxrwxrwx 2 sam adm 0 10月 31 01:01 http3.conf
-rwxrwxrwx 2 sam adm 0 10月 31 01:01 httpd.conf

# find . -perm -7 -print | xargs chmod o-w
# ls -l
drwxrwxr-x 2 sam adm 4096 10月 30 20:14 file6
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 http3.conf
-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf

用g r e p命令在所有的普通文件中搜索hostname这个词:

# find . -type f -print | xargs grep "hostname"
./httpd1.conf:# different IP addresses or hostnames and have them handled by the
./httpd1.conf:# VirtualHost: If you want to maintain multiple domains/hostnames
on your

用g r e p命令在当前目录下的所有普通文件中搜索hostnames这个词:

# find . -name * -type f -print | xargs grep "hostnames"
./httpd1.conf:# different IP addresses or hostnames and have them handled by the
./httpd1.conf:# VirtualHost: If you want to maintain multiple domains/hostnames
on your

注意,在上面的例子中, 用来取消find命令中的*在s h e l l中的特殊含义。
删除数量比较多的文件
ls | xargs -n 20 rm -fr
ls当然是输出所有的文件名(用空格分割)
xargs就是将ls的输出,每20个为一组(以空格为分隔符),作为rm -rf的参数
也就是说将所有文件名20个为一组,由rm -rf删除,这样就不会超过命令行的长度了

分享到:
评论

相关推荐

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

    Linux文件查找命令`find`和`xargs`是Linux系统中非常重要的工具,它们帮助用户在文件系统中高效地定位和处理文件。本文将详细解释这两个命令的基本使用和相关选项。 `find`命令是一个功能强大的命令,用于在指定...

    linux find 命令大全

    - 在处理大量文件时,使用 `-print0` 和 `xargs -0` 可以避免 `find` 命令由于命令行过长而出错。 - 需要注意的是,`find` 命令的执行可能会很慢,特别是当搜索范围较大时。因此,在生产环境中使用时需要谨慎考虑...

    shell-find和xargs详述.txt

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

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

    ### Linux 下xargs命令详解及xargs与管道的区别 #### 一、xargs命令简介 在Linux系统中,`xargs`是一个非常实用且强大的命令,它主要用于将标准输入(stdin)中的数据转换为命令行参数,从而可以方便地处理大量...

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

    ### Linux中的find与xargs命令详解 在Linux系统中,`find` 和 `xargs` 是两个非常重要的命令行工具,它们被广泛用于文件搜索、处理等任务中。本文将详细解析这两个命令的功能、用法及其应用场景。 #### 1. find ...

    Linux find 命令使用小技巧一则

    在Linux系统中,`find`命令是一个非常强大的工具,它允许用户在文件系统中搜索符合特定条件的文件或目录。本文将深入探讨如何利用`find`命令的一个实用技巧,即根据时间戳删除指定天数之前的目录,这对于定期清理...

    Linux常用命令_MbyW.xls

    "find / -name walter find /home -amin -10 十分钟内访问过的文件 find /home -atime -10 十天内访问过的文件 find /home -cmin -10 十分钟内修改过的文件 find /home -ctime +10 十天内被改过、新增的文件 find /...

    Linux文件查找命令find

    `find`命令结合`xargs`使用可以更高效地处理大量文件的查找与操作。在实际应用中,`find`命令的强大功能和灵活性使其成为Linux环境下文件管理和自动化任务处理的利器。通过合理配置选项,可以实现对文件系统的深度...

    linux - find 命令总结

    `find`命令是Linux系统中一个非常强大的工具,用于在文件系统中查找符合特定条件的文件。这个命令的灵活性和实用性使得它成为日常系统管理、故障排查和数据操作中的必备技能。下面我们将深入探讨`find`命令的一些...

    关于find命令-各种运用示例

    关于`find`命令,它是Linux和Unix系统中用于在文件系统中查找文件的强大工具。它提供了多种选项和参数,能够根据文件名、属性、时间戳等条件进行搜索。以下是关于`find`命令的详细说明: ### 一、find命令格式 `...

    linux shell find从入门到精通

    Linux Shell Find 从入门到精通 Find 命令是 Linux 中最强大的命令之一,用于搜索和处理文件。在本篇文章中,我们将从基础知识开始,深入浅出地介绍 Find 命令的使用方法和高级技巧。 一、通用查找 Find 命令的...

    linux下find命令实例

    ### Linux 下 find 命令实例详解 #### 概述 `find` 是 Linux 和类 Unix 系统中一个非常强大的文件查找工具。通过 `find` 命令,用户可以基于多种条件来搜索文件系统中的文件或目录,如名称、权限、所有者、组、...

    Linux下find命令整理

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

    find命令调研文档

    `find` 命令作为Linux系统中最常用的文件搜索工具之一,其强大而灵活的功能使其成为系统管理员和开发人员日常工作中不可或缺的一部分。它不仅可以帮助用户在复杂的文件系统结构中快速定位特定文件或目录,还能根据...

    Linux操作命令五.doc

    在 Linux 操作系统中,find 和 xargs 命令是两个非常重要的命令。find 命令主要用于搜索和查找文件,而 xargs 命令则用于将标准输入转换为参数列表。下面将详细介绍这两个命令的使用和应用。 find 命令 find 命令...

    Linux中find命令的用法入门

    Linux系统下的Find 命令具有很强大的搜索功能,可以遍历整个文件系统。所以 find 命令很耗资源,有时候甚至会耗费很长时间,因此建议把它放在后台执行。 Find 命令格式如下所示: find pathname -options [-print -...

    find的用法很有用

    ### Linux find 命令详解 #### 概述 `find` 命令是 Linux 系统中一个非常强大的工具,用于在指定路径下查找文件。它支持多种选项来帮助用户精确地定位到需要的文件或目录。下面将详细介绍 `find` 的各个选项以及...

    Linux Find_命令使用详解

    对于更复杂的操作,推荐使用 `xargs` 命令代替 `exec`,以提高效率和灵活性。 #### 五、总结 `find` 命令是 Linux 系统管理的重要工具之一,掌握其使用方法有助于高效地管理和维护文件系统。无论是简单的文件查找...

Global site tag (gtag.js) - Google Analytics