这个来自linux的代码块是什么以及如何编写应该在MS-DOS中执行类似操作的等效代码?
#DB=CARMPAS1
[ $# -gt 0 ] && DB=$1 || DB=CARMPAS1
# if [ !$3 ]; then
# echo -e "\nplease enter database name, username and user password. Usage : rebuild_db.sh <db_name> <user_name> <password>\n"
# exit 1
# else if [ $1 == "load" ]; then
# load
# exit 0
# fi
我不知道为什么这些部分被注释掉了,但我猜他们打算做一些不成功的事情。也许是某个脚本运行的声明和条件
答案 0 :(得分:0)
以前似乎脚本需要使用三个参数运行,比如
rebuild_db.sh <db_name> <user_name> <password>
稍后会添加一些默认值,并且允许不带参数运行(只有rebuild_db.sh
)。默认数据库名称为CARMPAS1
,但如果至少有一个命令行参数,则会从命令行读取。
使用默认值读取第一个参数应该在MS-DOS批处理文件中工作,如下所示:
set dbname=CARMPAS1
if not "%1"=="" set dbname=%1
答案 1 :(得分:0)
代码正在测试参数的数量是否大于零。 如果是,则将环境变量DB设置为第一个参数的值,否则将DB设置为值“CARMPAS1”。