看板 MATLAB 關於我們 聯絡資訊
大家好 小弟想請教 一個封包好的matlab exe檔,假設放在B路徑 我在別的A路徑下想用cmd的方式呼叫該exe檔 我在exe裡面有加入disp(pwd)語句 可以看到cmd上面執行exe檔時,exe檔裡的disp表示當前所在A路徑 如何讓exe檔知道自己本身的exe位置是在B路徑 感謝大家~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.1.97 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1611989386.A.5F4.html
profyang: 那我問你 你怎麼去Call B路徑? 一定是你外面cmd那邊就知 01/30 23:05
profyang: 道B路徑吧 那你就可以從外面傳進去阿 01/30 23:05
caron0225: 我知道可以用引數的方式傳路徑進去,但是我希望能避免 01/30 23:51
caron0225: 這種方式 01/30 23:51
caron0225: 不知道是否有類似python sys.argv功能的指令 01/30 23:52
profyang: 那你試試這招: [status, result] = system('set PATH'); 01/31 15:22
profyang: executableFolder = 01/31 15:23
profyang: char(regexpi(result, 'Path=(.*?);', 'tokens', 'once' 01/31 15:23
profyang: )); 01/31 15:23
profyang: 似乎在執行matlab compile出來的exe時,它會自動把exe的 01/31 15:24
profyang: 路徑加到系統變數PATH的最前面 01/31 15:24
caron0225: 感謝profyang大大!!這方式很有用,可以處理我遇到的問 02/01 11:52
caron0225: 題!!只是好奇這個Path是被加在哪裡??我再環境變數沒看 02/01 11:53
caron0225: 到~在matlab command window 的set path 也沒看到 02/01 11:54
profyang: 這個Path就是環境變數沒錯 相當於你在cmd打set Path 02/01 19:29
profyang: 只是Matlab compile的exe在執行時會多加路徑上去 02/01 19:29
profyang: https://i.imgur.com/9fcytSI.png 02/01 19:32