gpt4 book ai didi

linux - 为什么不使用 grep -r -e filename 查找名为 "filename"的文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:06:43 27 4
gpt4 key购买 nike

我想在我目录的所有文件夹中搜索 k1.sh

ADU-07 WebInterface-JobTable_files
ADU-07 WebInterface-JobTable.html
ADU-07 WebInterface-SelfTestResults_files
ADU-07 WebInterface-SelfTestResults.html
meas_2016-07-13_20-22-00
meas_2016-07-13_20-25-13
meas_2016-07-13_20-29-43
meas_2016-07-13_20-33-43
meas_2016-07-13_20-37-43
meas_2016-07-13_20-54-43
meas_2016-07-13_21-46-43

当我尝试

grep -r -e "k1.sh"  /home/milenko/SerradoMel/MT06

我什么都没有。为什么?如何检查我的 grep 是否支持 -r 选项?

最佳答案

grep 检查文件的内容,而不是文件的名称。你可以这样测试:

mkdir -p foo.d
echo "non-matching" >foo.d/k1.sh
echo "k1.sh" >foo.d/matching
grep -r -e k1.sh foo.d
rm -rf -- foo.d

上面的输出是:

foo.d/matching:k1.sh

...其中 foo.d/matching 是匹配的文件名,k1.sh 是内容。

您会看到它没有识别名为 k1.sh 的文件(但内容不匹配),而是识别名为 匹配;这是因为 grep 的文档目的是查看文件的内容,而不是文件的名称。


相反,要查找名为 k1.sh 的文件,请使用:

find /home/milenko/SerradoMel/MT06 -type f -name k1.sh

关于linux - 为什么不使用 grep -r -e filename 查找名为 "filename"的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38923145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com