只能从函数或来源脚本中取得"return"返回值的问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
mygfn
帖子: 3
注册时间: 2010-09-12 22:48

只能从函数或来源脚本中取得"return"返回值的问题

#1

帖子 mygfn » 2011-08-05 11:16

脚本中只有一行代码:
[ -z "$PS1" ] && return

执行后便会报这个错误信息。

但这行代码是从 /etc/bash.bashrc文件中照抄下来的。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 只能从函数或来源脚本中取得"return"返回值的问题

#2

帖子 eexpress » 2011-08-05 11:19

这会报错?
● 鸣学
头像
cuihao
帖子: 4793
注册时间: 2008-07-24 11:33
来自: 郑州
联系:

Re: 只能从函数或来源脚本中取得"return"返回值的问题

#3

帖子 cuihao » 2011-08-05 11:23

代码: 全选

cuihao@cuihao-arch ~ $ [ -z "$PS1" ] && return
cuihao@cuihao-arch ~ $ echo $?
1
ZSH和BASH都正常,
求人不如求它仨: 天蓝的Wiki 屎黄的Wiki 绿
Site: CUIHAO.TK    Twitter: @cuihaoleo
Machine: Athlon64 X2 5200+ / 2x2GB DDR2-800 / GeForce GTS 450
AD: ~まだ見ぬ誰かの笑顔のために~
mygfn
帖子: 3
注册时间: 2010-09-12 22:48

在shell中直接执行这一行是不报错的

#4

帖子 mygfn » 2011-08-05 11:49

但把它写入文件中,执行,就报错了。
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 只能从函数或来源脚本中取得"return"返回值的问题

#5

帖子 fnan » 2011-08-05 13:37

文件中$PS1是空的,return 是用在函数中吧。
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
回复