[解決] 如何使用cmd命令取得部分字串?

看板EZsoft (小軟體)作者 (nahgnimiast)時間15年前 (2010/08/06 00:34), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
我有個exe執行檔,需要xml檔案作為輸入參數 每次都要重下指令我覺得很麻煩,所以我想建 一個bat檔,使用拖曳的方法,把xml檔丟到bat 上去執行。 假設exe叫作AAA.exe,位於D:\tool內,XML檔會放在同一資料夾內 bat內容如下, ========bat內容=============== D: cd D:\tool AAA.exe -p %1 ============================== 要先切換目錄的原因是我發現cmd開始目錄會是C:\,所以會找不到AAA.exe 不過這樣寫就不能隨意換資料夾位置,所以我想請問要如何才能由%1內 把目錄字串切出來。 %1的內容大概會像 D:\tool\XXX.xml,這字串我要如何才可以只取得 D:\tool 或者有方法可以直接成功執行AAA.exe? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.121.131.100 ※ 編輯: tsaiminghan 來自: 59.121.131.100 (08/06 00:35)

08/06 00:38, , 1F
用 %~dp1 (取得磁碟機代號以及路徑)
08/06 00:38, 1F

08/06 12:39, , 2F
我怎麼覺得用程式比較快..ex:wsh
08/06 12:39, 2F

08/06 22:00, , 3F
謝謝,今天查到msdn,也發現用%~dp的方法
08/06 22:00, 3F
改成下面這樣就行了 ========bat內容=============== %~dp1AAA.exe -p %1 ============================== ※ 編輯: tsaiminghan 來自: 59.121.130.199 (08/06 22:04)

08/06 22:09, , 4F
今天還查到不少dos指令的用法,蠻有趣的
08/06 22:09, 4F
文章代碼(AID): #1CMkWSPR (EZsoft)
文章代碼(AID): #1CMkWSPR (EZsoft)