[討論] exe檔自身路徑位置

看板MATLAB作者 (淯仔)時間3年前 (2021/01/30 14:49), 編輯推噓4(4013)
留言17則, 2人參與, 3年前最新討論串1/1
大家好 小弟想請教 一個封包好的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

01/30 23:05, 3年前 , 1F
那我問你 你怎麼去Call B路徑? 一定是你外面cmd那邊就知
01/30 23:05, 1F

01/30 23:05, 3年前 , 2F
道B路徑吧 那你就可以從外面傳進去阿
01/30 23:05, 2F

01/30 23:51, 3年前 , 3F
我知道可以用引數的方式傳路徑進去,但是我希望能避免
01/30 23:51, 3F

01/30 23:51, 3年前 , 4F
這種方式
01/30 23:51, 4F

01/30 23:52, 3年前 , 5F
不知道是否有類似python sys.argv功能的指令
01/30 23:52, 5F

01/31 15:22, 3年前 , 6F
那你試試這招: [status, result] = system('set PATH');
01/31 15:22, 6F

01/31 15:23, 3年前 , 7F
executableFolder =
01/31 15:23, 7F

01/31 15:23, 3年前 , 8F
char(regexpi(result, 'Path=(.*?);', 'tokens', 'once'
01/31 15:23, 8F

01/31 15:23, 3年前 , 9F
));
01/31 15:23, 9F

01/31 15:24, 3年前 , 10F
似乎在執行matlab compile出來的exe時,它會自動把exe的
01/31 15:24, 10F

01/31 15:24, 3年前 , 11F
路徑加到系統變數PATH的最前面
01/31 15:24, 11F

02/01 11:52, 3年前 , 12F
感謝profyang大大!!這方式很有用,可以處理我遇到的問
02/01 11:52, 12F

02/01 11:53, 3年前 , 13F
題!!只是好奇這個Path是被加在哪裡??我再環境變數沒看
02/01 11:53, 13F

02/01 11:54, 3年前 , 14F
到~在matlab command window 的set path 也沒看到
02/01 11:54, 14F

02/01 19:29, 3年前 , 15F
這個Path就是環境變數沒錯 相當於你在cmd打set Path
02/01 19:29, 15F

02/01 19:29, 3年前 , 16F
只是Matlab compile的exe在執行時會多加路徑上去
02/01 19:29, 16F

02/01 19:32, 3年前 , 17F
文章代碼(AID): #1W5G6ANq (MATLAB)
文章代碼(AID): #1W5G6ANq (MATLAB)