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