将bash脚本转换为.bat #/bin/bash 函数用法(){ cat

将bash脚本转换为.bat #/bin/bash 函数用法(){ cat,bash,batch-file,Bash,Batch File,如何批量使用: #!/bin/bash function usage(){ cat <<EOF USAGE: $0 [strategylist] valid strategies are: ALLD ALLC TitForTat JOSS WeightedRandom Tester EOF exit 1 } [ -z $1 ] && usage javac robsAgents/*.java robsAgen

如何批量使用:

#!/bin/bash

function usage(){
cat <<EOF
USAGE: $0 [strategylist]

  valid strategies are:
    ALLD
    ALLC
    TitForTat
    JOSS
    WeightedRandom
    Tester
EOF
exit 1
}

[ -z $1 ] && usage

javac robsAgents/*.java robsAgents/behaviours/*.java

agentlist='leader:robsAgents.TournamentLeader'
agentlist=$agentlist";$1:robsAgents.Contestant"

while shift;
do
    agentlist=$agentlist";$1:robsAgents.Contestant"
done

java jade.Boot -gui -host 127.0.0.1 "$agentlist"

尽管给出这个显而易见的答案会让人恼火,但这确实是一个不错的建议,完全解决了bash的可移植性问题:在TA的机器上安装Cygwin

是的,安装Cygwin对于发布的许多小问题来说都是小题大做。但是安装是快速、简单和在线的,而且安装程序解决了多年的小问题和大问题。对我来说,这似乎是一个胜利


我向Cygwin表示歉意。仅供参考。bat与“windows脚本”不同。此外-如果你没有windows计算机,那么为什么要生成脚本?当然,你需要测试它。同意。尝试使用VBScript,它功能更强大(甚至更丑)我必须做一个java程序,而助教想要一个.bat文件来测试我的解决方案,因为我没有windows,所以我很难做到诚实。看一看:我想告诉他这样做,但他不是那么精通技术,只是擅长代理编程
:Loop
if "%1"=="" goto End
  use %1 here
shift
goto Loop
:End