zoukankan      html  css  js  c++  java
  • 关于 ‘--exec’ 参数( find 命令)及介绍 ‘xargs ’命令区别

    前言:find命令一直都是系统管理员的常用命令之一, 其参数中“-exec”尤其实用。而命令“xargs”也是类似find中的“-exec”参数,也被广泛使用着。

    本文着重讲解的是利用 find 或 xargs 命令,将当前“标准输出”(数据流)作为另一个命令的“标准输入”

    img

    一夫当关,“find”命令

    find   .  或 find  ~

    这是最基本的使用find的方法。具体功能是列出/root目录下的所有文件。

    注:这里仅仅是举例(未必定是/root目录),这条命令也可以配合“|grep”


    1/4:-name 参数

    find /tmp/linuxcn -iname ‘*.a’

    2/4:-type 参数

    find /tmp -name itxdm.me -type f

    类型参数列表: f 普通文件 l 符号连接 d 目录 c 字符设备 b 块设备 s 套接字 p Fifo

    3/4:-size 参数

    find . -type f -size 10M

    文件大小单元:b —— 块(512字节) c —— 字节 w —— 字(2字节) k —— 千字节 M —— 兆字节 G —— 吉字节

    4/4:-exec 参数

    find -type f -size 10M -exec ls -l {} ;

    5/5:Other 参数

    当然我们find的参数还有很多比如:-perm可以选择权限,-user可是选择用户,-group可以选择用户组等 。


    万夫莫开,”xargs”命令

    xargs可以将标准输出(数据流)转换成命令参数作为标准输入。更多查看:https://zh.wikipedia.org/wiki/Xargs

    这里演示了一下关于 xargs 的基础功能。即,将标准输入的内容(通过 xargs )进行横排输出

    1/3:简单 echo

    注意: xargs 命令的 echo 指令可忽略(默认)。

    2/3:删除例子

    可以看到我使用了 -exec -ok 进行了查询和删除操作,前者( -exec )比较危险( 无操作提醒 )。

    注意:使用 xargs 进行操作时,系统也是没有提醒的,且需要|(管道符)作为标准输出的导向。

    3/3:定义界定符

    同样,我用xargs也完成了删除操作。相对于使用-exec(find)删除操作,更加的易与理解并且指令简便。

    关于这篇文章:

    1。关于定义界定符(-I),有一点很多文章都没有强调。

    在使用 xargs 命令时并不是一定要使用 “{}” 方括号的,可能是因为 find 命令的( -exec )默认是 “{}” (为了统一),所以你用其他的定义符都是可以的,甚至你都可以用英文,数学等作为定义界定符。

    2。如果你仔细看的话,应该有发现。在执行 find 命令的时,我有时候没有打目录位置。

    原因是" find 并不是必须的。

    **如果你需要查找的位置就在当前(目录),那么系统默认就是" find . " **

    3。关于 xargs,功能就是这篇文章所写所说。但是熟练使用,会发现各种奇葩的运用方法。

    比如说,你在(渗透测试)文本文档中有很多URL地址需要下载。那么运用xargs,可以使用这样下载:

    cat url.txt | xargs wget -c

    再比如说,你在卸载RPM的PHP包时,需要卸载所有包。那么运用xargs,可以使用这样卸载:

    rpm -qa |grep php | xargs rpm -e

    再比如你的~(相信你也一定有自己运用 xargs 的想法)

    4。find命令中的 -exec 与 xargs 命令的区别,我认为俩者的优缺点在三个方面。

    -exec仅仅是一个参数,而 xargs 是一个成为男人的命令( man 可寻 )

    -exec操作时复杂(容易出错)xargs操作时相对简便了很多。

    -exec仅仅能使用在find命令中,而 xargs 独立命令可以用在很多地方。

    另外关于查找:我们还有更多的选择。CentOS下的mlocate就很棒,updatedb、localte xxx

  • 相关阅读:
    centos7安装elasticsearch
    nginx安装
    Emit学习笔记
    Docker备忘录
    IdentityServer4-参考
    IdentityServer4-端点
    IdentityServer4-主题
    css
    IdentityServer4-快速入门
    IdentityServer4-介绍
  • 原文地址:https://www.cnblogs.com/itxdm/p/xargs.html
Copyright © 2011-2022 走看看