gpt4 book ai didi

linux - 查找所有不以特定字符开头的文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:40 24 4
gpt4 key购买 nike

我正在使用此代码在 bash 脚本中查找所有 php 文件。

for f in $(find ./src -name '*.php'); 
do
echo "$f";
done

我如何遍历所有 *.php 文件但忽略以 _ 开头的文件?

例如,它应该列出 index.php,而不是 _menu.php

提前致谢

最佳答案

-name 参数确实允许 fnmatch 样式的通配符模式,这不是正则表达式并且没有否定模式。所以你需要两种选择之一(如果你想在查找操作中进行过滤):

您可以选择使用 RE。您需要注意正则表达式匹配的是整个路径,而不仅仅是名称,所以这样的事情应该有效:

find ./src -regex '.*/[^_/][^/]*\.php'

另一种方法是将 -name 与否定表达式结合使用(-a -not 表示“and not”):

find ./src -name '*.php' -a -not -name '_*'

关于linux - 查找所有不以特定字符开头的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56834426/

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