16.5.2 命令行历史¶
在使用多个命令绘制一张图时,这些命令可能使用了完全相同的标准选项参数,如果对于每个命令都需要把标准选项的参数写一遍,则太麻烦了,在这种情况下,GMT允许你省略标准选项的参数。例如:
gmt basemap -JX10c/10c -R0/10/0/10 -B1 -K > text.ps
gmt plot station.dat -J -R -O >> text.ps
GMT每个命令在执行的时候,会将当前命令所使用的标准选项的参数保存到命令行历史文件
gmt.history
中,比如上面第一个命令指定了 -JX10c/10c -R0/10/0/10
,会生成如下内容:
# GMT 5 Session common arguments shelf
BEGIN GMT 5.1.2
B 1
J X
JX X10c/10c
R 0/10/0/10
L 1
END
在执行第二个命令时使用了 -J -R
,省略了具体的参数值,此时命令会读取
gmt.history
文件中需要的参数值。
抛开具体的细节不看,可以认为后面的命令继承了前面命令的标准选项参数,如果之后的命令显式指定了标准选项的参数,则后面命令中的参数会覆盖 gmt.history
中保存的值。
需要注意,如果在一个命令中通过管道或其他手段调用了多个GMT模块,GMT无法保证
gmt.history
文件是按照从左到右的顺序处理的。
重要
命令历史这一特性看起来非常方便,但不建议依赖这一特性!建议将常用的标准选项的参数定义成变量使用。