2014-02-07 184 views
0

试着检查一个字符串的长度是否小于7.我想下面的代码应该工作得很好,但不是。怎么了?比较字符串长度

if [ ${#certid} -lt 5] ; then 
echo "[!] invalid ID" 
exit 
fi 
+1

您比较的5,而不是7 –

+1

之前']'所以'[$ {#certid} -lt 5]' – anubhava

回答

2

您有几个问题:

  1. 你比较没有7
  2. 您打印的ID是无效的,如果的certid长度小于 5,而不是如果它长于5.使用gt而不是lt
  3. 你错过了一个空格前关闭]
+0

由于添加一个空格!添加一个空间解决了它。不知道为什么我在代码示例中输入了5,但我已经覆盖了:) – ardevd