regex - Linux - 在路径中的每个斜杠后查找与正则表达式匹配的结果

标签 regex linux shell awk find

这是我的扩展正则表达式:^\.(git.*|svn)$(它是可变的,因为它是用户输入)


这些是我的查找结果:

    ./ivs-proj-2/.git/config
    ./ivs-proj-2/.editorconfig
    ./ivs-proj-2/mockup/mockup.png

我需要能够将每个斜线后的结果部分与我的正则表达式相匹配。如果匹配,我需要丢弃整行,如果不匹配,我需要打印它并跳到另一个结果(行)。

限制是脚本必须正确。我一直在试验 awk 但我似乎无法让它工作。有什么线索吗?


结果应该是这样的:

    ./ivs-proj-2/.editorconfig
    ./ivs-proj-2/mockup/mockup.png

最佳答案

awk -F'/' '{for (i=1;i<=NF;i++) {if ($i ~ /^\.(git.*|svn)$/) next}; print}' <filename>

关于regex - Linux - 在路径中的每个斜杠后查找与正则表达式匹配的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43028143/

相关文章:

php - 创建一个简单但灵活的模板引擎

python - 匹配内部带有双引号的双引号字符串

linux - 回复 : Open Matlab function from command line linux

java - 需要正则表达式来验证自定义输入

c - linux编程: write to device file

java - 使用ADT运行android项目频繁重启手机设备

node.js:使用用户输入作为命令行参数是否安全?

python - 替换 JSON 文件中的字符串

c++ - 是否存在 C++ shell 框架?

c - flex中的正则表达式有错误