【发布时间】:2018-02-01 14:36:02
【问题描述】:
我是 Linux 搜索的新手。但是需要编写脚本或命令来搜索文件夹中所有遵循特定模式的java文件(可以有其他目录)。
public class ${key} extends ${key}
其中变量${key} 是文件名。
一些例子:
让文件名是 Foo.java。
搜索模式:public class Foo extends foo。
其他变体:public class Foo extends com.example.foo.
此脚本需要稍后进行调整以执行其他 Java 文件内容搜索。
编辑:
我还需要获取${key},即我需要存储不带扩展名或路径的文件名,然后将其插入命令中。像我们做的事情(在 c/java 中):"public class" + fname + " extends " + " fname "
输出可以是:
./src/com/foo/bar.java:public class foobar extends com.foo.foobar
【问题讨论】:
-
可以通过 shell(grep, awk..) 来完成。但是,这并不安全。因为java语法允许类定义有换行符,cmets....为了快速和肮脏..好吧,grep有帮助。但如果你想让它用于长期使用或某些关键目的……你最好三思而后行。
标签: java linux shell grep find