我有一个带有路径列表的文本,我只想在具有特定前缀(foo
)的所有目录中选择一个特定路径到yml
。
所以当我运行grep -Eo "^config/foo.*/db.yml"
,它也选择其他db.yml
文件在子目录,这不是我所期望的:(
实际输出:
config/footestto/db.yml
config/foodummy/db.yml
config/footestto/prod/db.yml
预期输出:
config/footestto/db.yml
config/foodummy/db.yml
你能帮帮我吗?我的正则表达式可能有问题。谢谢。
$ egrep -w '^config/foo[a-z]+/db.yml' test.txt
你的正则表达式不正确:
/
匹配字符/
[a-z]+
匹配字母1和无限次
直到找到/db.yml