gpt4 book ai didi

linux - 如何只打印包含特定字符串的文件的文件名部分?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:40 25 4
gpt4 key购买 nike

我需要打印出包含字符串“XYZ”的文件名(例如 A001.txt)。我试过这个:
grep -H -R "XYZ"~/目录/*.txt |剪切-d':'-f1

它将输出整个路径(例如~/directory/A001.txt)。我怎样才能让它只输出文件名(例如 A001.txt)?

最佳答案

为什么哦,为什么 GNU 的人给了 grep 一个选项来递归地查找文件,而当有一个非常好的工具专为这项工作而设计并且有一个非常明显的名字。唉……

find . -type f -exec awk '/XYZ/{print gensub(/.*\//,"",1,FILENAME); nextfile}' {} +

上面使用的是 GNU awk,我假设你已经有了,因为你打算使用 GNU grep。

关于linux - 如何只打印包含特定字符串的文件的文件名部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43643478/

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