find命令可以根据指定的条件查找文件或目录,xargs命令可以将标准输入转换为命令的参数,grep命令可以根据指定的模式搜索文本。 在Linux中使用find、xargs、grep 3个工具找到某个文件中的指定字符,可以使用以下命令: find PATH-typef|xargs grep PATTERN 其中:
find / -name "core" -print | xargs echo "" >/tmp/core.log 在整个系统中查找内存信息转储文件(coredump) ,然后把结果保存到/tmp/core.log 文件中: find . -type f -print | xargs grep "hostname" 用grep命令在所有的普通文件中搜索hostname这个词 find ./ -mtime +3 -print|xargs rm -f –r...
在当前目录下查找含有jmxremote字符的文件 test@>find . -type f|xargs grep "jmxremote" .当前目录 -type查找文件类型 f普通文件 xargs对于提供find管道参数传输 grep查找字符jmxremote
find . -type f -name"*.txt" -exec grep"example" {} \; xargs xargs命令从标准输入(stdin)构建并执行命令。当与find命令结合使用时,find命令的输出(通常是文件名列表)被传递给xargs,然后xargs将这些文件名作为参数传递给指定的命令。xargs可以非常有效地处理大量的文件名,因为它可以将多个文件名组合成单个命令...
因为这里grep命令使用了参数 -l,表示查询文件中包含root字符串的文件名。查找字符串的对象的是文件里的内容,而不是文件名本身。使用xargs使得find查找出的文件名作为grep的参数,而不能作为标准输入。如果不用xargs,则查找的是文件名中包含root字符串的项。
# 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 用grep命令在当前目录下的所有普通文件中搜索hostnames这个词: ...
xargs是从标准输入并执行命令的程序,依据个人判断是LZ当前目录下并未包含"ABC"文件才导致所谓的错误!具体xargs介绍你可以参考下这个: http://www.92wiki.com/hdwiki/index.php?doc-view-78
在下面的例子中我们使用grep命令。find命令首先匹配所有文件名为“ passwd*”的文件,例如passwd、passwd.old、passwd.bak,然后执行grep命令看看在这些文件中是否存在一个sam用户。 代码语言:javascript 复制 # find/etc-name"passwd*"-exec grep"sam"{};sam:x:501:501::/usr/sam:/bin/bash ...
find . -type f -exec grep -n “example” {} \; “` – 搜索当前目录中所有以.php为后缀的文件,并查找其中包含字符串”error”的行: “` find . -type f -name “*.php” -exec grep “error” {} \; “` – 搜索/home目录中修改时间在7天以内的所有文件,并查找其中包含字符串”warning”的...
find . -maxdepth 2 -name *.log | xargs egrep "11|22" 或者 find . -maxdepth 2 -name *.log | xargs grep -E "11|22" 替换 find与sed的配合使用: 替换当前路径下.log文件中的22,替换为55: find . -maxdepth 2 -name *.log | xargs sed -i 's/22/55/g' ...