我正在寻找BASH正则表达式从下面的命令中拉出’db’agruments.但是,不保证参数的顺序.出于某种原因,我无法让它完全发挥作用.
到目前为止我有什么
regex="--db (.*)($| --)" [[ $@ =~ $regex ]] DB_NAMES="${BASH_REMATCH[1]}" # These are example lines somecommand --db myDB --conf /var/home # should get "myDB" somecommand --db myDB anotherDB manymoreDB --conf /home # should get "myDB anotherDB manymoreDB" somecommand --db myDB # should get "myDB" somecommand --db myDB anotherDB # should get "myDB anotherDB"
关于正则表达式的任何建议?