什么是-p在bash正则表达式测试中做什么?

时间:2013-10-25 07:06:51

标签: regex bash

我在bash脚本中进行了这个测试,虽然我有一些模糊的想法,但我想确定到底发生了什么。

if [[ "$FLAGS" =~ -p' '+-?[0-9]+ ]] 

我可以说它正在$FLAGS上测试一些正则表达式,但我不确定为什么需要-p

一般来说,我想知道bash正则表达式测试中-p做了什么。 (理想情况下,在联机帮助页中查找类似内容的位置。)

2 个答案:

答案 0 :(得分:4)

“ - p”在此上下文中是正则表达式的一部分。正则表达式正在寻找以下任何模式的匹配:

-p 123
-p123
-p -123
-p-123

“”和第二个“ - ”是可选的。

答案 1 :(得分:0)

BASH会将{{>> =~运算符之后的所有内容视为正则表达式,因此BASH会尝试匹配此正则表达式:

-p' '+-?[0-9]+
相关问题