您可以从命令行运行脚本,只需键入 Mnova .exe 文件和脚本所在的路径以及 -sf "脚本函数名称": "mestrenovaPathname" "scriptPathname" -sf "scriptFunctionToRun" 即可。
例如
1.mestrenova 脚本路径
例如:mestrenova c:\temp\multiOpen.qs 将运行 multiOpen.qs 文件中的 multiOpen() 函数,即运行具有相同文件名的函数。
2.mestrenova scriptPath -sf functionName,arg1,arg2,...,argN
运行 scriptPath 文件中的 functionName(arg1,arg2,...,argN)。
下面的命令行与上面的命令行操作相同:
mestrenova -sf functionName,arg1,arg2,...,argN scriptPath
举例说明:
您也可以使用:"mestrenovaPath" "scriptPath" -sf "scriptFunctionToRun"
"C:\Program Files\Mestrelab Research S.L\MestReNova\MestReNova.exe" "C:\Program Files\Mestrelab Research S.L\MestReNova\scripts\myScript.qs" -sf "myFunction"
也可以指定参数:
"C:\Program Files\Mestrelab Research S.L\MestReNova\MestReNova.exe" "C:\Program Files\Mestrelab Research S.L\MestReNova\scripts\myScript.qs" -sf "myFunction",0.1,10,true,off
在这种情况下,MNova 将以指定的参数运行 myScript.qs 中的 myFunction(0.1,10,true, "off")。逗号后无空格!
3.mestrenova -sf functionName,arg1,arg2,...argN
在这种情况下,假定函数 functionName 取自 MNova 标准或用户定义的脚本目录之一。
注意:命令行参数用空格分隔。因此,逗号后不要使用空格。如果脚本参数包含空格,请使用引号:"C:\Program Files\Mestrelab Research S.L\MestReNova\MestReNova.exe"-sf openSpecWithMols, "C:\1H\fid"。
这不需要引号: "C:\Program Files\Mestrelab Research S.L\MestReNova\MestReNova.exe" -sf openSpecWithMols,C:\1H\fid
复杂案例示例:
mestrenova specPath1 specPath2 -sf functionName,arg1,arg2 specPath3 specPath4
这将首先打开 specPath1、specPath2、specPath3 和 specPath4 波谱。然后应用脚本:functionName(arg1, arg2)
还有一个命令行参数-w(w 代表等待)。如果命令行中包含该参数,且 Mnova 尚未运行,则 Mnova 将打开、加载任何文件并运行命令行中传入的任何脚本,最后关闭。
如果存在此参数,但 Mnova 已在运行,则第二个 Mnova 实例将把命令行信息传递给第一个运行的实例,第一个运行的实例将加载/运行文件/脚本,最后通知第二个实例它已完成,因此第二个实例将关闭。
举例如下
MestReNova.exe -w
Mnova 未运行:Mnova 立即打开并关闭。
Mnova 正在运行:第二个 Mnova 实例将立即返回。
MestReNova.exe myscript.qs -w
Mnova 未运行:Mnova 会打开运行 myscript.qs 文件中的 myscript 函数,并在完成后关闭。
Mnova 正在运行:运行第二个 Mnova 实例,并将参数传递给已运行的 Mnova 实例。在已运行的 Mnova 实例中运行 myscript.qs 文件中的 myscript 函数,完成后通知第二个 Mnova 实例,并关闭第二个 Mnova 实例(从命令行启动的那个)。
|