在shell脚本中使用wget并获取其返回值 示例:
wget www.google.com
if [ $? = 0 ]
then
echo "success"
else
echo "fail"
fi
Linux运行大量shell脚本,包括上面的一个。假设在shell脚本中执行wget
后,OS会控制其他一些shell脚本,当再次开始执行shell脚本时,那么$
?返回值不会是wget
的返回值。
有没有办法在linux中避免shell脚本返回值竞争条件?
的问候,
Sukhdeep Singh
答案 0 :(得分:3)
此处没有竞争条件,因为每个脚本都在不同的子shell中运行,而子shell中的变量/环境不会被另一个正在运行的子shell进程覆盖。
答案 1 :(得分:-1)
在shell比较中,对于if语句,您有两个选择: 整数和字符串:
for string you have to use :
if [ "$var" = "mystr" ];then
mycode
fi;
对于整数选项,您必须使用:
if [ 1 -eq $myvar ];then
mycode
fi;
注意:
e = equvalent, l = less, g = great ,t = than
-eq ==
-le <=
-ge >=
-gt >
-lt <