如何判断在shell程序命令行输入的程序参数
答案:2 悬赏:10
解决时间 2021-02-20 06:06
- 提问者网友:纹身骑士
- 2021-02-20 01:44
如何判断在shell程序命令行输入的程序参数
最佳答案
- 二级知识专家网友:爱情是怎么炼成的
- 2021-02-20 02:37
$0:命令本身、$1:命令行的第一个参数、$2:命令行的第二个参数。如下:
$myrunfile file1 file2 file3
则:$0:myrunfile、$1:file1、$2:file2、$3:file3
$myrunfile file1 file2 file3
则:$0:myrunfile、$1:file1、$2:file2、$3:file3
全部回答
- 1楼网友:输掉的尊严
- 2021-02-20 03:29
本来一直使用:
db_name=$1
if [ -z $db_name ]
then
echo "database no selected yet "
db_name=remotedb
else
echo "datebase selected yet "
echo "datebase selected yet db_name=$db_name"
fi
但是不能判断,一直显示不是空串,后面查询知道
问题跟用的shell有关。如果用ksh,直接用[ -z $1 ]或[[ -z $1 ]]就可以了,如果是sh,要把$1引起来:[ -z "$1" ]。另一个方法是[ arg"$1" == arg ]
修改为下面,ok了
db_name=$1
if [ -z "$db_name" ]
then
echo "database no selected yet "
db_name=remotedb
else
echo "datebase selected yet "
echo "datebase selected yet db_name=$db_name"
fi
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯