将Linux代码转换为批处理文件格式以在MS-DOS中运行

将Linux代码转换为批处理文件格式以在MS-DOS中运行,linux,batch-file,dos,Linux,Batch File,Dos,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&g

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

我不知道为什么这些部分被注释掉了,但我猜它们是为了做一些不成功的事情。可能是一个声明和一个条件,用于运行某些脚本

以前似乎需要使用三个参数运行脚本,如

rebuild_db.sh <db_name>  <user_name> <password>

代码正在测试参数的数量是否大于零。
如果是,则将环境变量DB设置为第一个参数的值,否则将DB设置为值CARMPAS1。

您是从哪里了解到MS-DOS在Windows NT上运行的?只是想避免任何进一步的问题,例如哪些Windows操作系统和类似的操作系统…我的错…虽然我没有学会,但我想我现在学会了。我自己尝试学习这种类型的编码……如果您需要定期学习,那么实际学习shell脚本可能是值得的。Stackoverflow是一个很好的翻译工具,但不是一个完全可靠的翻译工具@Selase:只是澄清一下:从Windows NT到现在的现代Windows根本没有MS-DOS基础或任何DOS。它们有一个命令行解释器和一个类似DOS的文本窗口。它们大多与兼容层兼容,但不是MS-DOS。@Joachim:谢谢你的澄清。但是,像.bat格式的批处理文件会在WinNT Upper环境中运行吗?我明白了……那么,如何以批处理文件格式指定参数呢?特别是这一部分。[$-gt 0]&&DB=$1 | | DB=CARMPAS1@Selase例如我在答案中加了这个。很抱歉,首先没有完整阅读问题。如何以批处理文件格式阅读?测试参数并设置DB?
set dbname=CARMPAS1
if not "%1"=="" set dbname=%1