以下命令适用于cli本身:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return START_REDELIVER_INTENT;
}
但不是在bash脚本中。
我的想法是,我希望为程序提供名称为someCall prefix.+([[:digit:]]).postfix
或prefix.1.postfix
的文件。
我需要在脚本中更改哪些内容?
编辑: 忘了提它抛出的错误:
prefix.112.postfix
编辑2:
如果我使用syntax error near unexpected token `('
来源bash脚本,那么它可以工作: - \
答案 0 :(得分:1)
将+
放在([[:digit:]])
之后并转义.
:
^prefix\.([[:digit:]])+\.postfix$
此外,如果您不需要捕获的数字组,请执行以下操作:
^prefix\.[[:digit:]]+\.postfix$
答案 1 :(得分:1)
您似乎混淆了shell globbing和正则表达式匹配。这些是不同的东西,并使用不同的元字符。
(标准POSIX)用于表达"其中一个或多个",正如正则表达式+
量词所做的那样。
但是,你可以试试这是否有足够的选择性:
$ touch prefix.1.postfix
$ echo prefix.[[:digit:]]*.postfix
prefix.1.postfix