当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : shell编程的一个问题
帖子发表于 : 2007-06-12 15:53 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
#!/bin/sh
if cp test test1
then echo“cp done”
else echo “cp fail”
fi


cp 成功不是返回0 吗?
为什么这个if 后执行的是1?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-06-12 15:56 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 272
判断返回值。是$?吧


_________________
● 鸣学


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-06-12 15:59 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
我知道判断返回值是成功是0
我意思是为什么这个if 后面的条件值为1(cp 成功后)


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-06-12 15:59 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
我知道判断返回值是成功是0
我意思是为什么这个if 后面的条件值为1(cp 成功后)


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-06-12 16:08 
头像

注册: 2007-01-15 17:15
帖子: 3766
送出感谢: 0 次
接收感谢: 0 次
test 是保留字,不知道你说什么意思,

请你看看《提问的智慧》,不要在这里发什么家庭作业式的问题


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-06-12 16:14 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
不知道就别回啊,我的意思是cp test文件到test1
我是不理解if (cp test test1)这个条件为什么会成立?????
因为正如2楼说cp成功应该返回0


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2007-06-12 16:20 

注册: 2007-04-09 12:19
帖子: 119
送出感谢: 0 次
接收感谢: 0 次
引用:
$echo test >test
$cp test test1
$echo $?
0
$rm test
$cp test test1
cp: 无法确认 ‘test’: No such file or directory
$echo $?
1

完全没有问题

引用:
$echo '#!/bin/sh
if cp test test1
then echo "cp done"
else echo "cp fail"
fi' >test.sh
$echo test >test
$sh test.sh
cp done
$rm test
$sh test.sh
cp: 无法确认 ‘test’: No such file or directory
cp fail

也没有问题

不知你想表达什么


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2007-06-12 16:23 
头像

注册: 2007-01-15 17:15
帖子: 3766
送出感谢: 0 次
接收感谢: 0 次
废话,如果有test 文件在当前目录,cp当然成功,,if 本身就是判断 0 为真


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2007-06-12 16:46 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
我想表达的就是 if 判断的时候为什么0(cp 成功返回值) 为真??


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2007-06-12 17:22 

注册: 2005-11-25 11:01
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
知道答案了,谢谢各位。


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

当前时区为 UTC + 8 小时


在线用户

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


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

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

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