我有一条这样的路径..
/Users/me/bla/dev/trunk/source/java/com/mecorp/sub/misc/filename.java
我希望能够使用 bash 在另一个目录中创建包结构,例如
com/mecorp/sub/misc/
我尝试了以下但它不会工作..如果我将我的正则表达式更改为 .* 我能够得到一个匹配,这意味着我的 bash 是好的 - 我引用正则表达式或正则表达式的方式一定有问题自己。我确实看到在这里工作..
所以我很困惑?
regex="(?<=/java)(.*)(?=/)"
[[ $fullfile =~ $regex ]]
echo "pkg name " ${BASH_REMATCH[0]}
谢谢你的时间。
编辑 - 我使用的是 OSX,所以它没有那些漂亮的 GNU 扩展。