执行生成GDX的.gms文件时,能否指定文件夹保存Text Document等输出文件?
GAMS输出文件指定保存路径方法
当然可以,以下是针对不同类型文件的具体设置方式:
1. LOG文件
GAMS默认生成与.gms文件同名的.log文件,要指定路径可在执行命令时添加Log参数:
gams mymodel.gms Log="C:\myoutput\mymodel.log"
也能在.gms文件内部用$setGlobal指令预先定义路径:
$setGlobal logPath "C:\myoutput\" $onEcho > run.gms gams mymodel.gms Log="%logPath%mymodel.log" $offEcho
2. Text Document(文本输出)
如果是通过put语句生成的文本文件,直接在put命令里指定完整路径即可:
file mytxt /C:\myoutput\result.txt/; put mytxt '这是输出内容'/; putclose mytxt;
3. SAS Output
若GAMS调用SAS生成输出,有两种指定路径的方式:
- 在SAS脚本内部直接设置输出路径,比如:
ods pdf file="C:\myoutput\sas_result.pdf"; /* SAS分析代码 */ ods pdf close; - 在GAMS的
execute命令里传递路径参数给SAS脚本:execute 'sas.exe -sysin mysas.sas -set outputPath="C:\myoutput\"';
4. LXI File
LXI是GAMS Studio的日志索引文件,指定保存路径有两种方式:
- 打开GAMS Studio,进入
Tools > Options > General,在Output Directories区域设置Log Index Files的目标文件夹 - 执行命令时添加
LXI参数:gams mymodel.gms LXI="C:\myoutput\mymodel.lxi"
统一设置工作目录
也可以通过WorkDir参数统一指定工作目录,让所有未单独设置路径的输出文件默认保存到该文件夹:
gams mymodel.gms WorkDir="C:\myoutput\"
内容的提问来源于stack exchange,提问作者Michael
相关产品推荐
相关产品推荐

