输出三个数中的最大数?linux shell编程
3个回答
展开全部
以上程序有如下几点错误:
1,!书写错误。应该改成英文的叹号。
2,tcsh中while的语法错误。以上的while写法是sh/bash中while的用法。对于csh/tcsh中while的用法应该为while(expression)
do
something
end
3,为变量赋值错误。read
name也是sh/bash中为变量赋值的方法,在csh/tcsh中应该改为:
set
name
=
$<
4,判断是否相等错误。应该改为==
最终修改的代码为:
#!/bin/tcsh
set
again=yes
while
(
$again
==
"yes"
)
echo
-n
"input
your
name:"
set
name
=
$<
echo
"your
name
is
$name"
echo
-n
"do
you
want
to
continue
again?"
end
1,!书写错误。应该改成英文的叹号。
2,tcsh中while的语法错误。以上的while写法是sh/bash中while的用法。对于csh/tcsh中while的用法应该为while(expression)
do
something
end
3,为变量赋值错误。read
name也是sh/bash中为变量赋值的方法,在csh/tcsh中应该改为:
set
name
=
$<
4,判断是否相等错误。应该改为==
最终修改的代码为:
#!/bin/tcsh
set
again=yes
while
(
$again
==
"yes"
)
echo
-n
"input
your
name:"
set
name
=
$<
echo
"your
name
is
$name"
echo
-n
"do
you
want
to
continue
again?"
end
2010-06-09
展开全部
#!/bin/sh
#接收3个数值
_A=$1
_B=$2
_C=$3
_D=`echo $_A|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_A is not number"
fi
_D=`echo $_B|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_B is not number"
fi
_D=`echo $_C|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_C is not number"
fi
if [ $_A -ge $_B ]
then _D=$_A
else
_D=$_B
fi
if [ $_D -ge $_C ]
then echo $_D
else
echo $_C
fi
#接收3个数值
_A=$1
_B=$2
_C=$3
_D=`echo $_A|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_A is not number"
fi
_D=`echo $_B|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_B is not number"
fi
_D=`echo $_C|awk '{if($0~/[^0-9]/) print "1"}'`
if [ ! -z $_D ]
then echo "$_C is not number"
fi
if [ $_A -ge $_B ]
then _D=$_A
else
_D=$_B
fi
if [ $_D -ge $_C ]
then echo $_D
else
echo $_C
fi
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
echo -e "$x\n$y\n$z" | sort -n |tail -n1
在脚本里面就把xyz换成 $1 $2 $3
跟上面那个差不多
lix@lxLaptop:~$ x=10
lix@lxLaptop:~$ y=3
lix@lxLaptop:~$ z=19
lix@lxLaptop:~$ echo $x $y $z
10 3 19
lix@lxLaptop:~$ echo -e "$x\n$y\n$z" | sort -n |tail -n1
19
在脚本里面就把xyz换成 $1 $2 $3
跟上面那个差不多
lix@lxLaptop:~$ x=10
lix@lxLaptop:~$ y=3
lix@lxLaptop:~$ z=19
lix@lxLaptop:~$ echo $x $y $z
10 3 19
lix@lxLaptop:~$ echo -e "$x\n$y\n$z" | sort -n |tail -n1
19
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询