我正在尝试按以下方式查找特定文件:
locate myfile.conf
然后打印我要查找的所有特定字符串
locate myfile.conf | xargs cat | grep filename
命令返回我的两行
filename
filename
现在,我怎么知道“文件名”找到的特定myfile.conf
位置是什么?
还有另一种简单的方法可以达到我的需求?
答案 0 :(得分:3)
:- use_module(library(clpfd)).
cop(0).
cop(W) :- W #> 0, W #=< 10, W #= X+1, cop(X).
命令在使用xargs时无用
cat
帮助突出显示文件位置
--color
显示文件名及其匹配结果的路径
-H
显示文件内的行号
-n
答案 1 :(得分:1)
我的假设是,在这种情况下,您有某些*.conf
文件具有特定的字符串filename
,并且您正在寻找具有特定字符串的文件。对 ?如果是这样
尝试
grep -l filename `find ./ -name *.conf`
答案 2 :(得分:1)
您可以消除cat
并仅使用grep
:
locate myfile.conf | xargs grep filename
Grep会将匹配文件的文件名放在每个输出行的前面。