当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 2 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [问题]shell变量使用问题
帖子发表于 : 2008-08-14 8:36 

注册: 2007-06-20 17:36
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
在shell中使用变量时,如
代码:
TMP_VAR=1
echo $TMP_VAR
echo ${TMP_VAR}
echo "${TMP_VAR}"

这三者有什么区别么?

亦或
代码:
TMP_VAR=1
if [ $TMP_VAR = "1" ]; then
...
fi

if [ ${TMP_VAR} = "1" ]; then
...
fi

if [ "${TMP_VAR}" = "1" ]; then
...
fi

有什么区别么?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-08-14 9:25 
头像

注册: 2007-11-19 21:51
帖子: 6956
地址: 成都
送出感谢: 0 次
接收感谢: 4
第一个和第二个没啥区别,括起来要规范些,如果变量的名字不只一个字母的最好括起来,如果没括假如有两个变量TMP_VAR 和TMP,那机器就不知道是哪个了。最外面打括号是让变量的值结合成一体,免得判断错误,拿你那个if语句来说:if [ ${TMP_VAR} = "1" ]; then ,如果${TMP_VAR}的值为a b c,那么就会出现:bash: [: 过多的参数 这样的错误,而括起来就不会。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 2 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译