看板 MATLAB 關於我們 聯絡資訊
※ 引述《arthur3000 (Arthur)》之銘言: : 大家好 : 想請問各位有關dos的指令 : 像是 dos('dfmod a.ind') % dfmod是模擬軟體的執行 a.ind是檔案 : 若把 cmd = 'dfmod a.ind' : 再執行 dos(cmd) 這樣也是OK沒問題的 : 但是我程式需要在 dfmod a.ind 後面加上幾個字 例如 n1=0 : 要執行 dfmod a.ind n1=0 % 進行模擬時將某塊區域的n1設為零 : 我想要做的是如下: : cmd = 'dfmod a.ind' : x = 'n1=0' : cmd = strcat(cmd,12,x) % try this for x = 1:n cmd = sprintf('dfmod a.ind n1=%.0d', x); dos(cmd); end % or this for x = 1:n cmd = ['dfmod a.ind n1=', int2str(x)]; % if x is an integer dos(cmd); end % i recommend the first one : dos(cmd) : 這樣卻無法執行(會得到ans = 34,不知道是否為錯誤碼) : 在合併的過程好像出了問題 : 不然一定要手動輸入 dos('dfmod a.ind n1=0') 才能執行 : 因為要用程式控制x,無法手動輸入 : 不知道該如何解決呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 24.21.33.212 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1407893366.A.B94.html ※ 編輯: jatj (24.21.33.212), 08/13/2014 09:31:51
arthur3000: Thanks for your help. My main purpose is 08/13 09:57
arthur3000: generating command like 'dfmod a.ind n1=0 n3=0' 08/13 09:58
arthur3000: or 'dfmod a.ind n1=0 n4=0'. Using x to control n1 08/13 09:59
arthur3000: n2 n3 ... 08/13 09:59
jatj: 可以再寫清楚點嗎?這樣就用 switch x比較好點 08/13 10:30
arthur3000: dfmod a.ind 的意思dfmod這個外部程式是執行a.ind檔案 08/13 10:36
arthur3000: 那在後面加上 n1=0 可以改變 a.ind檔裡面的參數n1變成 08/13 10:37
arthur3000: 0 那我想用matlab來控制a.ind檔裡面有很多可以改的 08/13 10:38
arthur3000: 參數 n2 n3 n4等等 08/13 10:38
arthur3000: 問題已經解決了 轉double合併就沒問題了 08/13 10:48