空格在shell中的关键性

简介:

先来看一段代码

 
  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后面)一个也不能少,少一个都会出错,这个就是细节问题了。



本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/388116,如需转载请自行联系原作者

相关文章
|
Shell
SHELL下如何去掉字串里的空格(或指定字符)
SHELL下如何去掉字串里的空格(或指定字符)
944 0
|
Shell Linux Perl
Adb Shell输入带空格的文本串
Adb Shell输入带空格的文本串
370 0
|
Shell
SHELL脚本递归循环,文件名包含空格的处理办法
SHELL脚本递归循环,文件名包含空格的处理办法
187 0
|
Shell Linux
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
192 0
|
自然语言处理 Shell Perl
Shell脚本中使用awk进行空格分词
Shell脚本中使用awk进行空格分词
218 0
|
Shell
shell中for循环变量有空格的问题——IFS变量
shell中for循环变量有空格的问题——IFS变量
497 0
关于编写shell脚本中的空格使用解读
最近用到了开机自启动脚本,接触到了shell脚本的编写,对其中的空格使用方法产生了疑问,以下是我的见解
|
Shell
SHELL脚本递归循环,文件名包含空格的处理办法
SHELL脚本递归循环,文件名包含空格的处理办法
586 0
|
Shell Linux
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
LINUX SHELL如何递归访问目录(处理包含空格的文件名)
146 0
|
自然语言处理 Shell Perl
Shell脚本中使用awk进行空格分词
Shell脚本中使用awk进行空格分词
216 0