2015-04-04 50 views
0

q.bat文件運行正常,它的內容是:負載init.q文件在啓動

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

具有init.q文件中定義一些基本的q函數,我想每次都讓他們裝和可用I啓動kdb +/q。 我試過,包括在q.bat文件的末尾下面的線,但不起任何作用:

q init.q 

我讀過有關其他方法,比如設置QINIT環境變量或編輯q.q文件,但我懷疑通過.bat加載更清潔。

回答

1

設置QINIT或添加q.q文件是將代碼加載到每個q進程中的正確方法。

但是,如果要加載代碼爲Q個過程的選擇性的數量,這可以通過以下方法進行:

更換w32\q.exe %* -p 5000w32\q.exe init.q %*(我省略了口,因爲你可能不要不想監聽同一端口的所有進程)

init.q可以爲流程執行所需的初始化代碼,這可能涉及

  • 加載其他q腳本(如log.qutil.q
  • 處理命令行參數(.z.x),初始化一個特定的進程類型。例如,給定cmd行q.bat rdb,您可以loda rdb.q並調用.rdb.init函數
+0

謝謝。對於完整的圖片,'%*'是什麼意思? – 2015-04-04 21:25:40

+1

在Windows批處理文件中,'%*'提供了提供給批處理文件的所有命令行參數 - 請參閱http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent。 MSPX?MFR =真 – MdSalih 2015-04-04 22:32:21