先来看一段代码

  1. #!/bin/sh  
  2. a=37 
  3.  
  4. if [$a -gt 27 ]  
  5. then  
  6.   echo $a  
  7. fi  
  8. exit 0 

懂shell的朋友,你觉得有错吗?大部人看了以后都说没有错,你可以拿编辑器中去试试肯定有错,修改后应该为

  1. #!/bin/sh  
  2. a=37 
  3.  
  4. if [ $a -gt 27 ]  
  5. then  
  6.   echo $a  
  7. fi  
  8. exit 0 

这两段代码唯一不同的地方就是$a前面一个有空格,一个没有空格,在shell中有些空格是不能少的,像这段程序中一行if代码中的三个空格(if后面,$a前面,27后面)一个也不能少,少一个都会出错,这个就是细节问题了。