shell命令中if语句的后街分号作用
2015-11-30 16:21
633 查看
关于shell脚本中分号(;)——命令分割符的使用说明
分号是用来隔断每个语法关键字或命令的。对于字符的比较及其他shell语法关键字之间分号的使用方式相同。需要知道的是在不同的语法命令之间要用分号隔开或是换行方能执行,否则将会在调用脚本的时候报错。
第一种
test(){
if [ 1 -eq 1 ]; then
echo "1=1"
else
echo "1!=1"
fi
}
第二种
test1(){
if [ 1 -eq 1 ]
then echo "1=1"
else echo "1!=1"
fi
}
|
不同的shell脚本不一样,bash和csh其中一个加,一个不加。具体那个忘了。
推荐《Unix: the textbook》英文版,讲的比较具体。
|
bash我常用,至少把手是可以不加的。有时候也是一种写法习惯。
有这样的写法(系统文件一般都这样):
if [xxx] ;then #注释
xxxx
它完全可以写成:
if [xxx]
then #注释
xxx
我想这是习惯问题。
两种写法都是正确的。
分号是用来隔断每个语法关键字或命令的。对于字符的比较及其他shell语法关键字之间分号的使用方式相同。需要知道的是在不同的语法命令之间要用分号隔开或是换行方能执行,否则将会在调用脚本的时候报错。
第一种
test(){
if [ 1 -eq 1 ]; then
echo "1=1"
else
echo "1!=1"
fi
}
第二种
test1(){
if [ 1 -eq 1 ]
then echo "1=1"
else echo "1!=1"
fi
}
|
不同的shell脚本不一样,bash和csh其中一个加,一个不加。具体那个忘了。
推荐《Unix: the textbook》英文版,讲的比较具体。
|
bash我常用,至少把手是可以不加的。有时候也是一种写法习惯。
有这样的写法(系统文件一般都这样):
if [xxx] ;then #注释
xxxx
它完全可以写成:
if [xxx]
then #注释
xxx
我想这是习惯问题。
两种写法都是正确的。
相关文章推荐
- 如何确保 Shell 脚本只有一个实例运行
- shell 参数
- shell 参数
- shell 引号 转义符 通配符 特殊字符
- 利用Powershell快速导出域控所有用户Hash
- linux关于bashrc与profile的区别
- shell脚本中的$*,$@和$#
- linux shell date
- [Hadoop 2.6.0] Remote Submit Job Error:[ExitCodeException: /bin/bash: line 0: fg: no job control]
- shell用if
- linux shell 脚本中的set -e 是什么意思?
- shell 指令(二)
- 为什么Mac每次启动终端会提示:-bash: alias: -G’: not found?
- linux的shell编程
- shell设置环境变量
- shell脚本直接执行没有问题,crontab定时执行失败的解决方法
- shell脚本中相关技巧
- 关于shell文件中出现syntax error: unexpected end of file
- shell编程之函数与信号捕捉
- 建立一个规范的shell脚本