在启动时加载init.q文件

时间:2015-04-04 14:28:24

标签: kdb q-lang

我的q.bat文件正常运行,其内容为:

g:
cd \q
w32\q.exe %* -p 5000

init.q文件中定义了一些基本的q函数后,我想在每次启动kdb + / q时加载它们并使其可用。 我已经尝试在q.bat文件的末尾添加以下行,但它什么也没做:

q init.q

我已经阅读了其他方法,例如设置QINIT环境变量或编辑q.q文件,但我怀疑通过.bat加载更清晰。

1 个答案:

答案 0 :(得分:1)

设置QINIT或添加q.q文件是将代码加载到每个q进程的正确方法。

但是,如果要将代码加载到选定数量的q进程中,可以通过以下方法完成:

w32\q.exe %* -p 5000替换为w32\q.exe init.q %*(我省略了端口,因为您可能不希望所有触发器都在同一端口上侦听)

init.q内,您可以执行该过程所需的初始化代码,这可能涉及

  • 从一些众所周知的目录中加载其他q脚本(例如log.qutil.q
  • 处理命令行参数(.z.x),以初始化特定的流程类型。例如,给定cmd行q.bat rdb,您可以使用rdb.q并调用.rdb.init函数