[问题] script 问题

楼主: shadow0104 (shadow)   2014-05-28 16:36:54
各位前辈好
小弟一次发文如果有不符合规范的地方再请炮小力一点
小弟最近因为工作需要在网络上找到一段程式码但其中有几个地方不太懂
查了GOOGLE大师也查不太到
if ! [[ $OCTET =~ ^[0-9]+$ ]]; then
这一个判断式
Q1
if后面接惊叹号为什么意思
Q2
=~ ^[0-9]+$这一段又该做何解释,=~ 及^[0-9]及+$各代表什么含意
感谢各位前辈指教
作者: jokester (蛮王科科)   2014-05-28 17:31:00
像是shell的正则test,功能是看变量内容是否全数字先确定是哪种语言 如果是shell就查相应shell的test语句
楼主: shadow0104 (shadow)   2014-05-28 17:48:00
谢谢指点,我再往这方面查询
作者: goldie (阿良)   2014-05-29 09:25:00
看到两个[[这是bash专有语法[[里面支援扩充版正规(ERE)而=~即是采ERE比对,且ERE pattern写在右边这里的ERE pattern: "^[0-9]+$"表一整行都是0到9的字符,且长度为1以上if 后面的 ! 则是将判断结果反向

Links booklink

Contact Us: admin [ a t ] ucptt.com